i used following code delete app cache.
public void clearapplicationdata() { file cachedirectory = getcachedir(); file applicationdirectory = new file(cachedirectory.getparent()); if (applicationdirectory.exists()) { string[] filenames = applicationdirectory.list(); (string filename : filenames) { if (!filename.equals("lib")) { deletefile(new file(applicationdirectory, filename)); } } } } public static boolean deletefile(file file) { boolean deletedall = true; if (file != null) { if (file.isdirectory()) { string[] children = file.list(); (int = 0; < children.length; i++) { deletedall = deletefile(new file(file, children[i])) && deletedall; } } else { deletedall = file.delete(); } } return deletedall; }
once delete code means deletes provider declared in manifest. there way clear cache without deleting content provider?
you can avoid not deleting database folder
if (!filename.equals("lib")&&!filename.equals("files")&&!filename.equals("database")) { deletefile(new file(applicationdirectory, filename)); }
Comments
Post a Comment