android webview 拦截js 后显示空白 50C

为了避免webview加载过慢的问题,将js文件放在android 本地, 加载时拦截js返回,
但是结果是显示的页面不出来了。ios组的却显示正常,纠结了一天,找不到问题,求大神解答

代码如下:
public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
WebResourceResponse response = null;
LogUtil.d(TAG, "-------------- 请求回复1111111111 = " + url);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {

                            if (url.contains(str0)) {
                                try {
                                    InputStream localCopy = getAssets().open("all.js");//打开本地存储的js文件
                                    response = new WebResourceResponse("text/plain", "UTF-8", localCopy);//返回给h5的文件读取
                                } catch (IOException e) {
                                    e.printStackTrace();
                                    LogUtil.d(TAG,"IO异常!!!");
                                }
                            }
                        }
                        return response;
                    }

2个回答

如果别的地方都没有错的话,初步怀疑在if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {}的时候没有进出,所以返回response是null

// 注入js函数监听

public void injectImgClick() {

mWebView.loadUrl("javascript:(function(){var objs = document.getElementsByTagName('img');for(var i = 0; i <objs.length; i++) {objs[i].onclick = function() {window.toolbox.openImage(i,this.src);};}})()");

}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!