Android 4.4.2不删除文件

时间:2014-12-06 10:56:10

标签: java android android-external-storage

我有一段代码可以扫描目录中的所有文件,它应该删除这些文件。但出于某种原因,它并没有删除它们。

我拥有的是:

String path = Environment.getExternalStorageDirectory().getAbsolutePath()+"/Images/"; 
File f = new File(path);
File file[] = f.listFiles();
for (File aFile : file) {
    boolean isDeleted = aFile.delete();
    if(isDeleted) {
        log.d("file", "is deleted");
    }
}

当我调试此代码时,它会针对isDeletedtrue的每个文件说明。但当我检查手机上的“图库/图像”文件夹时,我发现所有图像仍在那里......

我的清单中还有以下两个权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

任何人都知道为什么文件不会被删除,尽管它说isDeletedtrue

1 个答案:

答案 0 :(得分:3)

您无法在Android 4.4.2中删除文件。至少,不是其他应用程序创建的文件。这是一个新的(和愚蠢的)限制。

你需要做的是Root你的手机,然后安装像SDFix或类似的应用程序。您可以再次获得对SD卡的完全访问权限。

这是目前最好的方式。

或者你可以试试&#34;漏洞&#34;,如同这篇文章:

How to delete a file from SD card?