【发布时间】:2017-07-25 05:58:20
【问题描述】:
在打开页面以从已建立的存储中选择必要的 SSL 证书(自签名)时,我找不到如何强制组件的方法。
活动创建期间:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_form1);
//настраиваем браузер
mbrowser = (WebView) findViewById(R.id.webview);
mbrowser.getSettings().setJavaScriptEnabled(true);
mbrowser.getSettings().setJavaScriptEnabled(true);
mbrowser.getSettings().setAppCacheEnabled(true);
mbrowser.getSettings().setDatabaseEnabled(true);
mbrowser.getSettings().setDomStorageEnabled(true);
mbrowser.getSettings().setSupportZoom(true);
mbrowser.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mbrowser.getSettings().setBuiltInZoomControls(true);
CookieManager.getInstance().setAcceptCookie(true);
//web resource on self-signed certificate
mbrowser.loadUrl("https://blabla.com");
mbrowser.setWebViewClient(new NocWebViewClient());
}
private class NocWebViewClient extends WebViewClient {
@Override
public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
handler.proceed();
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
return true;
}
@Override
public void onPageFinished(WebView view, String url){
}
}
据我了解,有必要在 onReceivedSslError 或 OnReceivedClientCertRequest 添加更改证书,就像在普通浏览器中一样:
浏览器中的图片如下所示
这里只是为了制作它?
【问题讨论】:
标签: android ssl webview ssl-certificate