在致电服务之前,我需要验证SSL证书的有效性。如果证书无效,则需要显示警报。请给我一些想法。
答案 0 :(得分:3)
可以通过在X509HostnameVerifier
上设置自定义SSLSocketFactory
来自定义主机名验证。某些实现已在android中提供:AllowAllHostnameVerifier
,BrowserCompatHostnameVerifier
,StrictHostnameVerifier
/ * ... * /
public class MyHostnameVerifier extends AbstractVerifier {
boolean verify(String hostname, SSLSession session) {
X509Certificate[] chain = session.getPeerCertificateChain();
/* made some checks... */
return checked;
}
}
sslSocketFactory.setHostnameVerifier(new MyHostnameVerifier());