0

我有一个清除应用程序数据的代码,但在重新启动应用程序后。所有数据都回来了。

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目录了。但是当我再次运行应用程序时,所有目录都恢复原样。但是,如果我使用管理应用程序 > 应用程序信息 > 清除数据,一切正常。有什么不同 ?

4

1 回答 1

0

你是如何删除目录的?如果目录不为空,则文件类不会删除目录。您应该实现递归删除方法或改用 Apache Commons IO。

这是一个有用的链接: 从java中删除文件夹

于 2013-09-22T10:32:53.927 回答