ionic项目cordova打包成app,img标签src引用http外部资源显示不出

1,038 阅读1分钟

Android5.0上 WebView不支持Http和Https混合

http图片不显示情况:

你的网页是https协议,你加载了http的图片

原因:

Android5.0上 WebView不支持Http和Https混合模式

platform => android => CordovaLib => src => org => apache => cordova => engine => SystemWebViewEngine.java文件里面的initWebViewSettings方法内加上

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
        webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE);
    }
    
    
    设置setMixedContentMode(有三种值)
        MIXED_CONTENT_ALWAYS_ALLOW:允许从任何来源加载内容,即使起源是不安全的;
        MIXED_CONTENT_NEVER_ALLOW:不允许Https加载Http的内容,即不允许从安全的起源去加载一个不安全的资源;
        MIXED_CONTENT_COMPATIBILITY_MODE:当涉及到混合式内容时,WebView 会尝试去兼容最新Web浏览器的风格。