解决android 5.0 webview不能加载http与https混合内容的问题

在Android 5.0上webview默认不允许加载http与https混合内容:

比如你访问的网页为http://xxx.com/a.html,

则如果a.html包含了https的资源,则此资源不会显示。

如果仔细观察log,可以看到如下的内容提示:

 

。。。。。。was loaded over HTTPS, but requested an insecure image。。。。。。。。。。

 

So,该怎么解决呢?很简单,只需设置webSettings,允许其加载混合网络协议内容即可。

//webview在安卓5.0之前默认允许其加载混合网络协议内容
// 在安卓5.0之后,默认不允许加载http与https混合内容,需要设置webview允许其加载混合网络协议内容
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}

 

你可能感兴趣的:(android)