Intercept and override HTTP requests from WebView

后端 未结 7 732
醉话见心
醉话见心 2020-11-30 17:54

I have a WebView in my application in which some site is opened (always the same, it is my own page). The site has some JS code which loads some images from the remote host.

7条回答
  •  有刺的猬
    2020-11-30 18:19

    This may helps:

    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    @Override
    public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
        String url = request.getUrl().toString();
        WebResourceResponse response = super.shouldInterceptRequest(view, request);
        // load native js
        if (url != null && url.contains(INJECTION_TOKEN/* scheme define */)) {
    
            response = new WebResourceResponse(
                    "text/javascript",
                    "utf-8",
                    loadJsInputStream(url, JsCache.getJsFilePath(path) /* InputStream */));
        }
        return response;
    }
    

提交回复
热议问题