Добавить этот класс
public class HttpsTrustManager implements X509TrustManager {
private static TrustManager[] trustManagers;
private static final X509Certificate[] _AcceptedIssuers = new X509Certificate[]{};
@Override
public void checkClientTrusted(
X509Certificate[] x509Certificates, String s)
throws java.security.cert.CertificateException {
}
@Override
public void checkServerTrusted(
X509Certificate[] x509Certificates, String s)
throws java.security.cert.CertificateException {
}
public boolean isClientTrusted(X509Certificate[] chain) {
return true;
}
public boolean isServerTrusted(X509Certificate[] chain) {
return true;
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return _AcceptedIssuers;
}
public static void allowAllSSL() {
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String arg0, SSLSession arg1) {
return true;
}
});
SSLContext context = null;
if (trustManagers == null) {
trustManagers = new TrustManager[]{new HttpsTrustManager()};
}
try {
context = SSLContext.getInstance("TLS");
context.init(null, trustManagers, new SecureRandom());
} catch (NoSuchAlgorithmException | KeyManagementException e) {
e.printStackTrace();
}
HttpsURLConnection.setDefaultSSLSocketFactory(context != null ? context.getSocketFactory() : null);
}
}
и вызвать его из MainActivity с HttpsTrustManager.allowAllSSL();
Хотя это не спасает подход, но я решить мою проблему с этим.
Вы уверены, что используете код с URL-адресом, используя 'hostname1' вместо' oldhostname'? Ваши симптомы будут соответствовать случаю, когда ваш Java-код по-прежнему использует «oldhostname». – CommonsWare
Это может быть проблема с неправильным URL-адресом, и в этом случае вы получите аналогичную ошибку в браузере. Или это проблема с SNI, см. Http://stackoverflow.com/questions/5879894/android-ssl-sni-support. –
Да, я уверен, что URL-адрес верен. Я уверен, что Штеффен прав, я очень быстро взглянул на SNI/Android некоторое время назад, и я понял, что для чего-то выше 2.x все в порядке. Похоже, я неправильно понял, что я читаю, я потрачу время, чтобы полностью прочитать ссылку. Большое спасибо Steffen –