chr*_*riz 8 ssl https android certificate webview
我在Android上使用本机WebView时遇到问题.我需要使用SSL客户端证书对站点进行身份验证.Android WebView似乎不支持这一点.作为一种解决方法,我使用了WebView的修改版本:
https://github.com/yonekawa/webview-with-client-certificate
修改后的WebView通过将正确配置的SslSocketFactory注入标准Android WebView来工作.这适用于Android 2.x设备.但是,使用Android 4 ICS它不再起作用了.SslSocketFactory仍在ICS中,但似乎它不再使用了.
所以我的问题是:有没有人成功在ICS上配置Android WebView,以便它可以使用客户端证书?或者有其他选择吗?
我已经尝试过的:
将SSL客户端证书导入Android密钥库,只使用WebView而不进行任何修改.这不起作用,客户端证书不随请求一起发送.但它可以在本机浏览器中使用.
使用HttpClient自己创建SSL连接,获取站点的HTML并将其交给WebView.这基本上有效,但是我需要拦截WebView发出的所有请求并自己处理它们.但是,WebView不提供POST请求的数据,这使得这种方法对我来说无法使用.
我认为你想要的是覆盖以下隐藏方法:
public void onReceivedClientCertRequest(WebView view,
ClientCertRequestHandler handler, String host_and_port) {
Run Code Online (Sandbox Code Playgroud)
默认情况下,这将取消请求。
我按照此示例使用了此方法来使用隐藏的 API: http://devmaze.wordpress.com/2011/01/19/using-com-android-internal-part-5-summary-and-example/
抱歉回复晚了。刚刚偶然发现你的问题...希望它仍然有帮助。
| 归档时间: |
|
| 查看次数: |
8370 次 |
| 最近记录: |