3

最后几天我试图使用客户端证书通过 webview 访问网站。我使用了来自https://github.com/yonekawa/webview-with-client-certificate的开源项目。Evertything 在 android 2.3.3 平台上运行良好,我可以安装证书并在 ssl 错误调用

        onReceivedSslError(WebView view, SslErrorHandler handler,
        SslError error){
                      handler.proceed();}

然后

       onReceivedHttpAuthRequest(final WebView view,
        final HttpAuthHandler handler, final String host, final String realm) 

被调用,我可以传递凭据以进行安全访问。问题是 4.x webview 没有相同的行为。我必须创建一个包含所有内部类的自定义 jar,请参阅:https ://github.com/yonekawa/webview-with-client-certificate/issues/ 1所以我可以使用隐藏方法

      onReceivedClientCertRequest(WebView view,
        ClientCertRequestHandler handler, String host_and_port)

问题是该方法被很好地覆盖并且项目被编译,但是该方法永远不会被调用,而是像往常一样调用onReceivedSslError,然后页面完成加载一个白页,甚至没有像 2.3 那样调用onReceivedHttpAuthRequest 。是否有人真正设法使上述示例适用于需要客户端证书和授权的网站?

4

0 回答 0