java无法删除可移动存储上的文件
我试图通过以下命令从Android棒棒糖上的本地存储中删除文件:
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.
正如文件中所述,不过运气不好
谷歌搜索了可用的解决方案,但没有解决问题
# 1 楼答案
您不能从KitKat(API 19)开始删除可移动媒体上的文件。您必须通过Storage Access Framework与用户交互,获取要删除的文件的访问对象DocumentFile,并对其调用
delete
操作。你可以阅读this来深入理解这场噩梦