我设法删除了由 WebView 创建的缓存文件:
Clearing android cache , Clear Application cache on exit in android
但是对于 Android 4.4,该解决方案无法正常工作,因为文件缓存在:
/data/data/com.app.package/app_webview/
代替:
/data/data/com.app.package/cache/
以上路径可以通过官方命令getCacheDir()
获取。
一种方法是对通过 Get Application Directory 获得的路径进行硬编码
但是,是否有任何[官方]/适当的解决方案来解决这个问题?
最佳答案
你可以使用这个代码
private static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (String aChildren : children) {
boolean success = deleteDir(new File(dir, aChildren));
if (!success) {
return false;
}
}
}
// The directory is now empty so delete it
return dir != null && dir.delete();
}
void trimCache() {
try {
String pathadmob = this.getFilesDir().getParent() + "/app_webview";
File dir = new File(pathadmob);
if (dir.isDirectory()) {
deleteDir(dir);
}
} catch (Exception e) {
e.printStackTrace();
}
}
另外,这里生成了所有4.4+的admob缓存,可以用一段代码验证用户使用了多少次应用,当用户达到限制时删除admob缓存。
关于android - 删除缓存文件 - WebView Android 4.4+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20792090/