У меня есть проблема в андроида,
этот проект получить некоторые раньше,
но теперь WebAPI оказывается НТТР HTTPS, и он не может работать,
Я понятия не имею, как это исправить,
Как получить Https строку в Android (с AQuery)
private AQuery aq;
aq = new AQuery(this);
aq.ajax(url, String.class, new AjaxCallback<String>() {
public void callback(String url, String string,
AjaxStatus status) {
if (status.getCode() == 200 && !string.equals("")
&& result.indexOf(Constants.STATUS) != -1) {
StatusMsg statusMsg = JSONParserHelper
.statusMsgParser(result);
if (statusMsg != null) {
String showMsg = JSONParserHelper.getStatusMsg(
Register.this, statusMsg);
Message msg = mHandler
.obtainMessage(1, showMsg);
mHandler.sendMessage(msg);
} else {
Message m = mHandler.obtainMessage(2,
getString(R.string.link_failure));
mHandler.sendMessage(m);
}
} else {
Message m = mHandler.obtainMessage(2,
getString(R.string.link_failure));
mHandler.sendMessage(m);
}
}
;
});
ли кто-нибудь может сказать мне, как получить HTTPS?
или мне нужно использовать SSLSocket, чтобы исправить это?
Тонкости вещей могут пойти не так с SSL. Не могли бы вы опубликовать трассировку стека, которую производит этот код? – jjm
вопрос есть статус. getCode() = -101, а строка равна нулю – Louis
Очень странно, что он возвращает '-101', поскольку все коды состояния http являются * положительными *, но состояние' 101' означает, что сервер хочет перейти на HTTPS. Я быстро просмотрел код AQuery и использует HttpUrlConnection, который * должен * автоматически обрабатывать обновление. Это, наверное, глупый вопрос, но делает ли URL, который вы переходите на начало aq.ajax с помощью https: //? Если это не проблема, это может быть что-то на стороне сервера. Можете ли вы получить доступ к URL-адресу с помощью браузера? Если все остальное не удается, это может быть ошибка в aq; вы можете использовать любое из нескольких хороших Android-библиотек Android. – jjm