Webview/X5WebView加载H5页面中的图片不显示问题

一、问题描述:在android4.4的手机上是可以显示H5页面中的图片,但测试机为android 6.0,7.0,8.0,就不行。

       我的H5的地址是:https://www.abc.com/new/103

       我的H5中的图片地址:http://178.156.152.1/dfeafefeadfe.jpg 如下图

       

二、原因是:Webview在安卓5.0之前默认允许加载混合网络协议内容 * 在安卓5.0之后,WebView默认不允许加载http与https混合内容,需要设置webview允许其加载混合网络协议内容。

解决方法:

1. 使用android自带的WebView,解决代码如下:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    mWebView.getSettings().setMixedContentMode(android.webkit.WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}

2.使用腾讯X5WebView的,我的低版本是(v2.2.0.1056_36542)

在X5WebView(集成时自带)页面,

第一步:initWebViewSettings()的方法中添加一行代码:

// android 5.0以上允许webView混合网络协议访问

webSetting.setMixedContentMode(android.webkit.WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);

第二步:X5WebViewEventHandler 这个类要实现三个空方法 
@Override
    public void jsRequestFullScreen() {

    }

    
​​​​​​​@Override
    public void jsExitFullScreen() {

    }

@Override
public boolean onPermissionRequest(String s, long l, MediaAccessPermissionsCallback mediaAccessPermissionsCallback) {
    return false;
}

或者 更新到最新版本(v3.6.0.1325_43613)

腾讯X5WebView下载地址:https://x5.tencent.com/tbs/sdk.html

更新新版本我没有用试。

发布了74 篇原创文章 · 获赞 58 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/Jason_996/article/details/82702242