小编Mar*_*edł的帖子

如何在Android 4.1+上将自签名SSL证书导入Volley

我开发使用Volley的 android应用程序.所有通信都通过HTTPS连接完成.因为我在本地环境中测试它,所以我使用Tomcat的自签名证书.

之前,我只有android 2.33.0设备.现在我还有4.1和4.4.

我的实现使用了这种方法:http://developer.android.com/training/articles/security-ssl.html(部分未知证书颁发机构)在Android 高达4.1的设备上,它可以很好地工作.带有自定义证书的SSLSocketFactory传递给Volley:

Volley.newRequestQueue(getApplicationContext(), new HurlStack(null, socketFactory));
Run Code Online (Sandbox Code Playgroud)

但Android 4.1+会发生什么?为什么它不起作用?我也尝试使用NullX509TrustManager:

private static class NullX509TrustManager implements X509TrustManager {
    @Override
    public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType)
            throws CertificateException {
    }

    @Override
    public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType)
            throws CertificateException {
    }

    @Override
    public java.security.cert.X509Certificate[] getAcceptedIssuers() {
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

但它仍然无效......

ssl android ssl-certificate x509certificate android-volley

12
推荐指数
2
解决办法
1万
查看次数