欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android实现WebView删除缓存的方法

程序员文章站 2022-07-11 18:36:12
本文实例讲述了android实现webview删除缓存的方法。分享给大家供大家参考。具体如下: 删除保存于手机上的缓存: // clear the cache...

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

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

// 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;
}

打开关闭使用缓存:

//优先使用缓存:
webview.getsettings().setcachemode(websettings.load_cache_else_network);
//不使用缓存:
webview.getsettings().setcachemode(websettings.load_no_cache);

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

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程序设计有所帮助。