我有一段代码可以扫描目录中的所有文件,它应该删除这些文件。但出于某种原因,它并没有删除它们。
我拥有的是:
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");
}
}
当我调试此代码时,它会针对isDeleted
为true
的每个文件说明。但当我检查手机上的“图库/图像”文件夹时,我发现所有图像仍在那里......
我的清单中还有以下两个权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
任何人都知道为什么文件不会被删除,尽管它说isDeleted
是true
?
答案 0 :(得分:3)
您无法在Android 4.4.2中删除文件。至少,不是其他应用程序创建的文件。这是一个新的(和愚蠢的)限制。
你需要做的是Root你的手机,然后安装像SDFix或类似的应用程序。您可以再次获得对SD卡的完全访问权限。
这是目前最好的方式。
或者你可以试试&#34;漏洞&#34;,如同这篇文章: