Android实现WebView删除缓存的方法

 更新时间:2015年07月29日 16:19:16   作者:无鸯  
这篇文章主要介绍了Android实现WebView删除缓存的方法,实例分析了Android针对WebView操作缓存的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!
如果你想靠AI翻身,你先需要一个靠谱的工具!

本文实例讲述了Android实现WebView删除缓存的方法。分享给大家供大家参考。具体如下:

删除保存于手机上的缓存:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// clear the cache before time numDays
private int clearCacheFolder(File dir, long numDays) {
  int deletedFiles = 0;
  if (dir!= null && dir.isDirectory()) {
    try {
      for (File child:dir.listFiles()) {
        if (child.isDirectory()) {
          deletedFiles += clearCacheFolder(child, numDays);
        }
        if (child.lastModified() < numDays) {
          if (child.delete()) {
            deletedFiles++;
          }
        }
      }
    } catch(Exception e) {
      e.printStackTrace();
    }
  }
  return deletedFiles;
}

打开关闭使用缓存:

1
2
3
4
//优先使用缓存:
WebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
//不使用缓存:
WebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

在退出应用的时候加上如下代码:

1
2
3
4
5
6
7
8
9
File file = CacheManager.getCacheFileBaseDir();
  if (file != null && file.exists() && file.isDirectory()) {
  for (File item : file.listFiles()) {
   item.delete();
  }
  file.delete();
  }
 context.deleteDatabase("webview.db");
 context.deleteDatabase("webviewCache.db");

希望本文所述对大家的Android程序设计有所帮助。

蓄力AI

微信公众号搜索 “ 脚本之家 ” ,选择关注

程序猿的那些事、送书等活动等着你

相关文章

最新评论