尽管使用 webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
,WebView 仍在将 MB 的文件保存到缓存中。有没有办法真正禁用缓存?
谢谢
最佳答案
似乎没有什么可以完全禁用缓存。
最好忽略缓存并强制 webView 每次加载新页面。
如果有人担心占用的缓存大小,可以限制缓存大小。有很多方法可以做到这一点,看看我的 similar answer .希望,答案会给出一些提示。
但是我认为禁用缓存有两件事很有前途,
1) 在加载页面时使用 header 参数,
注意:适用于 Android API 8+
Map<String, String> noCacheHeaders = new HashMap<String, String>(2);
noCacheHeaders.put("Pragma", "no-cache");
noCacheHeaders.put("Cache-Control", "no-cache");
view.loadUrl(url, noCacheHeaders);
2) 如果您有要加载到 webView 中的 html 页面, 您可以将以下元标记添加到 HTML 页面中。
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
希望对您有所帮助。
关于android - WebView 的 LOAD_NO_CACHE 设置仍然保存文件到磁盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5239954/