【发布时间】:2013-01-18 05:20:39
【问题描述】:
我正在覆盖 webViewClient.shouldInterceptRequest() 以从资产文件夹返回常见资源,如图像和 js 文件。但这适用于 android >=3 。是否有任何替代方法可用于 android 2.x
我发现onLoadResource() 提供了类似的行为,但它的返回类型是 void
【问题讨论】:
标签: android android-webview webviewclient
我正在覆盖 webViewClient.shouldInterceptRequest() 以从资产文件夹返回常见资源,如图像和 js 文件。但这适用于 android >=3 。是否有任何替代方法可用于 android 2.x
我发现onLoadResource() 提供了类似的行为,但它的返回类型是 void
【问题讨论】:
标签: android android-webview webviewclient
我已经对此进行了一段时间的研究,到目前为止,我发现实现类似目的的实用方法是为此 Web 视图实现本地 HTTP 代理。
要为 webview 设置代理,请参阅这个问题:WebView android proxy
有很多用 Java 编写的开源 HTTP 代理,例如 LittleProxy。
另一种可能但复杂的方法:使用shouldOverrideUrlLoading() 捕获所有页面请求但始终返回true。用自己的代码获取页面内容,然后用本地缓存副本解析替换所有远程资源,最后用WebView.loadData()加载修改后的内容。
【讨论】: