在android 2.x上获取webViewClient.shouldInterceptRequest()

时间:2013-01-18 05:20:40

标签: android android-webview webviewclient

我正在覆盖webViewClient.shouldInterceptRequest()以返回资产文件夹中的图像和js文件等常用资源。但这可用于android> = 3.。还有用于android 2.x的替代方法

我发现onLoadResource()提供了类似的行为,但其返回类型为void

1 个答案:

答案 0 :(得分:4)

我一直在挖这个问题,到目前为止我发现实现类似目的的实用方法是为这个Web视图实现一个本地HTTP代理。

要为webview设置代理,请参阅此问题:WebView android proxy

有许多用Java编写的开源HTTP代理,如LittleProxy


另一种可能但复杂的方法:使用shouldOverrideUrlLoading()捕获所有页面请求,但始终返回true。使用您自己的代码获取页面内容,然后使用本地缓存副本解析并替换所有远程资源,最后使用WebView.loadData()加载修改后的内容。