[英]Use user certificates inside webview fails
我正在尝试嵌入一个 webview,它嵌入一个 url,它使用个人证书在 web 中进行身份验证。如果我使用普通的 Chrome,当我达到这一点时,系统对话框会出现 select 证书,但是当我尝试webview,当我到达系统对话框的这一点时,web 失败并显示无法访问的消息。
有可能这样做吗? 这是我的 webview 代码。
val myWebView: WebView = findViewById(R.id.wv)
myWebView.loadUrl(url)
myWebView.webViewClient = object : WebViewClient() {
override fun shouldOverrideUrlLoading(
view: WebView?,
request: WebResourceRequest?
): Boolean {
return false
}
}
myWebView.webChromeClient = object : WebChromeClient () {
override fun onJsAlert(
view: WebView?,
url: String?,
message: String?,
result: JsResult?
): Boolean {
return super.onJsAlert(view, url, message, result)
}
override fun onJsConfirm(
view: WebView?,
url: String?,
message: String?,
result: JsResult?
): Boolean {
return super.onJsConfirm(view, url, message, result)
}
override fun onJsPrompt(
view: WebView?,
url: String?,
message: String?,
defaultValue: String?,
result: JsPromptResult?
): Boolean {
return super.onJsPrompt(view, url, message, defaultValue, result)
}
}
myWebView.settings.javaScriptCanOpenWindowsAutomatically = true
myWebView.settings.javaScriptEnabled = true
myWebView.settings.loadsImagesAutomatically = true
myWebView.settings.loadWithOverviewMode = true
myWebView.settings.domStorageEnabled = true
myWebView.settings.builtInZoomControls = true
myWebView.settings.allowContentAccess = true
谢谢
Webview 可能使用了您应用的.network 安全策略,而 Chrome 正在使用系统的策略。 如果是这种情况,您可以将自定义证书嵌入到应用程序中,并添加将其定义为受信任的network_security_config.xml
。 有关详细信息,请参见此处。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.