Я могу удалить данные из информации о приложении, вы хотите удалить данные навсегда, когда приложение было прекращено.Тем не менее, данные не могут быть удалены полностью.Вы знаете, в чем проблема из этого источника?
Context context = getBaseContext();
WebView webview = new WebView(context);
deleteCacheDir(this);
clearApplicationCache(null);
CookieManager.getInstance().removeAllCookie();
String[] fileList = this.fileList();
for(String file: fileList) {
this.deleteFile(file);
}
WebViewDatabase.getInstance(this).clearUsernamePassword();
WebViewDatabase.getInstance(this).clearHttpAuthUsernamePassword();
webview.clearSslPreferences();
webview.clearView();
webview.clearFormData();
webview.clearHistory();
webview.clearCache(true);
webview.clearMatches();
context.deleteDatabase("/data/data/android.Packege/databaseswebview.db"
context.deleteDatabase("/data/data/android.Packege/databases/webviewCache.db");
webview.freeMemory();
android.os.Process.killProcess(android.os.Process.myPid());
return true;
}
return true;
}
private void clearApplicationCache(java.io.File dir){
if(dir==null)
dir = getCacheDir();
else;
if(dir==null)
return;
else;
java.io.File[] children = dir.listFiles();
try{
for(int i=0;i<children.length;i++)
if(children[i].isDirectory())
clearApplicationCache(children[i]);
else children[i].delete();
}
catch(Exception e){}
}
void deleteCacheDir(Context context) {
Runtime localRuntime = Runtime.getRuntime();
String cachePath = context.getCacheDir().getPath();
String cmd = "rm -R " + cachePath;
try {
localRuntime.exec(cmd);
} catch (IOException e) {
e.printStackTrace();
}
}