Solución:
Lo resolví con la solución mencionada aquí:
http://developer.android.com/training/articles/security-ssl.html
Problemas comunes con la verificación del nombre de host
agregando un verificador de nombre de host personalizado que devuelve verdadero para mi nombre de host en el proyecto Volley y editando el método HurlStack openConnection:
if ("https".equals(url.getProtocol()) && mSslSocketFactory != null) {
((HttpsURLConnection)connection).setSSLSocketFactory(mSslSocketFactory);
((HttpsURLConnection)connection).setHostnameVerifier(new CustomHostnameVerifier());
}
Confíe en todos los certificados SSL: – Puede omitir SSL si desea realizar la prueba en el servidor de prueba. Pero no use este código para la producción.
public static class NukeSSLCerts {
protected static final String TAG = "NukeSSLCerts";
public static void nuke() {
try {
TrustManager[] trustAllCerts = new TrustManager[] {
new X509TrustManager() {
public X509Certificate[] getAcceptedIssuers() {
X509Certificate[] myTrustedAnchors = new X509Certificate[0];
return myTrustedAnchors;
}
@Override
public void checkClientTrusted(X509Certificate[] certs, String authType) {}
@Override
public void checkServerTrusted(X509Certificate[] certs, String authType) {}
}
};
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String arg0, SSLSession arg1) {
return true;
}
});
} catch (Exception e) {
}
}
}
Llame a esta función en la función onCreate () en Actividad o en su Clase de aplicación.
NukeSSLCerts.nuke();
Esto se puede utilizar para Volley en Android. Más Ref. https://newfivefour.com/android-trust-all-ssl-certificates.html
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)