我想重写 WebViewClient
的 onReceivedSslError()
。在这里,我想要检查 error.getCertificate()
证书是否由自签名 CA 签署,并且 仅在这种情况下 调用 handler.proceed()
。伪代码如下:
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
SslCertificate serverCertificate = error.getCertificate();
if (/* signed from my self-signed CA */) {
handler.proceed();
}
else {
super.onReceivedSslError(view, handler, error);
}
}
我的CA的公钥保存在名为rootca.bks
的BouncyCastle资源中。我该怎么办?