是否可以在多个 webview 之间启用缓存?这是场景:
- 创建带有 WebView 1 的 Activity A 以显示 xyz.com
- 稍后创建带有 WebView 2 的 Activity B 以再次显示 xyz.com
我尝试了 webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
但页面(我使用大型维基百科页面进行测试)仍然从网络重新加载,而不是使用缓存。
最佳答案
根据documentation ,应用程序中的所有 WebView 共享其缓存。
但是,维基百科似乎总是以标记响应不可缓存的方式设置响应 header :
Cache-Control:private, s-maxage=0, max-age=0, must-revalidate
所以,我不认为你做错了什么,也不认为你可以通过维基百科来解决这个问题。尝试使用更“正常”缓存策略的不同网站,我确信您会看到 WebView 的缓存按您的预期工作。
关于android - 两个 WebView 之间共享缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29211838/