WebViewClient默认会终止加载 public class WebViewClient { public void onReceivedSslError(WebView view, SslErrorHandler handler,SslError error) { //终止加载 handler.cancel(); } ... } 这个handler是一个SslErrorHandler 接口 public class SslErrorHandler extends Handler { /** * @hide Only for use by WebViewProvider implementations. */ @SystemApi public SslErrorHandler() {} /** * Proceed with public class MyWebViewClient { public void onReceivedSslError(WebView view, SslErrorHandler handler
Android 系统才可以) Android的处理要用到两个类 (1)import android.NET.http.SslError; (2)import android.webkit.SslErrorHandler R.id.webview); wv.setWebViewClient(new WebViewClient(){ public void onReceivedSslError(WebView view, SslErrorHandler
} //处理https请求 @Override public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) { sslErrorHandler.proceed(); //表示等待证书响应 // sslErrorHandler.cancel(); //表示挂起连接,为默认方式 // sslErrorHandler.handleMessage(null);
sslErrorHandler * @param sslError sslError */ @Override public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) { super.onReceivedSslError (webView, sslErrorHandler, sslError); //判断网站是否是可信任的,与自己网站host作比较 if (WebViewUtils.isYCHost(webView.getUrl (webView, sslErrorHandler, sslError); } } ``` 05.webView优化 5.0.1 视频全屏播放按返回页面被放大(部分手机出现) 至于原因暂时没有找到 error error */ @Override public void onReceivedSslError(WebView view, SslErrorHandler
webview.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler
android.net.http.SslCertificate; import android.net.http.SslError; import android.os.Bundle; import android.webkit.SslErrorHandler () { @Override public void onReceivedSslError(WebView view, SslErrorHandler android.net.http.SslError; import android.os.Bundle; import android.view.View; import android.webkit.SslErrorHandler @Override public void onReceivedSslError(WebView webview, SslErrorHandler handler, SslError
WebSettings.LOAD_DEFAULT); @Override public void onReceivedSslError(WebView view, SslErrorHandler
mWebView.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler
override fun onReceivedSslError( view: WebView, handler: SslErrorHandler
override fun onReceivedSslError( view: WebView, handler: SslErrorHandler override fun onReceivedSslError( view: WebView, handler: SslErrorHandler
处理SSLError引发安全问题 @Override public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError
webview.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler
webview.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler
, handler: SslErrorHandler?, error: SslError?)
Object 导入android.os.Handler //子类 [AsyncQueryHandler][AsyncQueryHandler.WorkerHandler][HttpAuthHandler][SslErrorHandler
super.onLoadResource(view, url); } @Override public void onReceivedSslError(WebView view, SslErrorHandler
GeolocationPermissions用于管理WebView的JS Geolocation API HttpAuthHandler表示一个HTTP认证请求,提供了方法操作(proceed/cancel)请求 SslErrorHandler
可以进行业务处理 } @Override public void onReceivedSslError(WebView view, SslErrorHandler
HttpAuthHandler handler, String host,String realm) //(获取返回信息授权请求) onReceivedSslError(WebView view, SslErrorHandler HttpAuthHandler handler, String host,String realm) //(获取返回信息授权请求) onReceivedSslError(WebView view, SslErrorHandler HttpAuthHandler handler, String host,String realm) //(获取返回信息授权请求) onReceivedSslError(WebView view, SslErrorHandler
webview.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler