webview出现空白页

近日发现锤子手机的webview在加载https的时候会出现空白页,查阅这篇文章https://www.jianshu.com/p/3c94ae673e2a发现是由于webView默认是不处理https请求的,所以页面显示空白。
具体解决方案如下:

onReceivedSslError()

作用:处理https请求
webView默认是不处理https请求的,页面显示空白,需要进行如下设置:

webView.setWebViewClient(new WebViewClient() {    
        @Override    
        public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {    
            handler.proceed();    //表示等待证书响应
        // handler.cancel();      //表示挂起连接,为默认方式
        // handler.handleMessage(null);    //可做其他处理
        }    
    });  

// 特别注意:5.1以上默认禁止了https和http混用,以下方式是开启
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
mWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}

你可能感兴趣的:(webview出现空白页)