我试图通过以下行从 Android Lollipop 上的本地存储中删除文件:
new File(path).delete();
删除驻留在内部存储中的文件工作正常。但未能对位于外部可移动存储上的文件执行此操作。我已经检查过该文件确实存在但不能被覆盖。此外,该应用程序已获得许可。
In order to read or write files on the external storage, your app must acquire the READ_EXTERNAL_STORAGE or WRITE_EXTERNAL_STORAGE system permissions.
正如文档中所述,但运气不佳。
在 Google 上搜索可用的解决方案,但无法解决问题。
最佳答案
从 KitKat (API 19) 开始,您无法删除可移动媒体上的文件。您必须通过 Storage Access Framework 与用户交互,获取要删除的文件的访问对象 - DocumentFile - 并对其调用delete
操作。您可以阅读this深入了解这场噩梦。
关于java - 无法删除可移动存储上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44194779/