OutputStream output = new FileOutputStream(filePath);
在其他设备中没有发生这种情况,我测试的设备:三星SM-G900H(API级别23)
、华硕P028(API级别24)
、三星SM-G950F(API级别28)
java.io.FileNotFoundException:/Storage/Emulated/0/WhatsApp/Media/WhatsApp Documents/api.txt:open失败:EACCES(拒绝权限)
问题内容: 我已经加入包括。 当我尝试在Nexus5(Android 6.0)中运行我的应用程序时,它引发了如下异常: 然后我尝试了另一部Android手机(Android 5.1),一切正常。代码如下: Android 6.0在权限方面有区别吗? 问题答案: 在Android 6(Marshmallow)中,即使用户在安装时接受了你的所有权限,他们仍可以稍后决定从你手中夺走其中一些权限。 快速解
并且在清单中权限集是正确的
更新 结果发现我调用open和close FileOutputStream的频率太高了,这会在某个时候抛出FileNotFoundException。听起来更像是线程问题。
在stackoverflow中也有类似的错误,但在尝试解决方案后(如您将在下几行中看到的),我会遇到相同的错误。 我在使用Nexus 5X api 27 oreo rom的模拟器和使用Android4.4的华为真手机中都试过了 在这两个设备中,我都有相同的错误: