我有一个代码来清除应用程序数据,但是在重新启动应用程序之后。所有数据都会回来。
public static void ClearApplicationData() {
File cacheDir = GetCurrentApplication().getCacheDir();
File appDir = new File(cacheDir.getParent());
if (appDir.exists()) {
String[] children = appDir.list();
if (children == null)
return;
for (String s : children) {
if (!s.equalsIgnoreCase("lib"))
{
File dirToDelete = new File(appDir, s);
//delete directory code
}
}
}
}
因此,在执行上述代码后,我检查了应用程序的data
目录,并且只剩下lib
目录。但是当我再次运行应用程序时,所有目录都恢复原样。但是,如果我使用管理应用程序>应用信息>清除数据,一切正常。有什么不同 ?
答案 0 :(得分:0)
你是如何删除目录的?如果目录不为空,则文件类不会删除该目录。您应该实现递归删除方法或使用Apache Commons IO。
这是一个有用的链接: deleting folder from java