我正在尝试清除存储在使用cordova webview的android应用程序中的缓存。
我尝试使用cordovaWebView.clearCache(true);
也尝试了
public void deleteCache(Context context) {
Log.i("Utility", "deleting Cache");
try {
File dir = context.getCacheDir();
if (dir != null && dir.isDirectory()) {
deleteDir(dir);
}
} catch (Exception e) {
Log.e("Utility", " exception in deleting cookies");
}
}
public static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
} else if (dir != null && dir.isFile()) {
dir.delete(); // delete the file INSIDE the directory
}
Log.i("Utility", "deleting Cache " + dir.delete());
return true;
}
但两者都没有用。 我可以得到任何解决方案,因为在Web视图中用户使用登录,因此我们需要在第二次加载应用程序时清除缓存。
答案 0 :(得分:1)
我正在使用“cordova-plugin-cache-clear”插件
https://github.com/anrip/cordova-plugin-cache-clear
要使用该插件,只需拨打window.CacheClear(success, error);
并清除webView缓存。
答案 1 :(得分:0)
为什么不使用org.felixtioh.phonegap.plugins.cachecleaner插件
http://plugreg.com/plugin/sagittaros/CacheCleaner
它对我来说很好。
答案 2 :(得分:0)
最简单的答案是
cordovaWebView.clearCache(true);
android.webkit.CookieManager.getInstance().removeAllCookie();
cordovaWebView是Cordovawebview的实例。
在需要清除cookie和缓存的情况下使用两者。