天天看点

Android WebView加载https出现空白页

Android WebView加载https出现空白页

APP 首页有广告图片,点击之后打开链接,本来都能正常打开,某一天同事告诉我点开是白屏。

调查了一下,发现WebView加载了URL,但是URL是https,因为之前加载都是http的,所以自然想到是https的影响,按照网上说明,增加如下代码:

WebSettings webSettings = webView.getSettings();

webSettings.setJavaScriptEnabled(true);

webView.setWebViewClient(new WebViewClient(){

@Override

public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){

Log.e(“tag”," SslError="+error);

handler.proceed();

}

});

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);

}

但好像并没有什么用,还是白屏,无法加载出来。

后来,经过深入调查,发现少加了如下属性,加上就能正常显示了。

webSettings.setLoadWithOverviewMode(true);
    webSettings.setDomStorageEnabled(true);
    webSettings.setBlockNetworkImage(false);
    webSettings.setUseWideViewPort(true);