NotFoundException: /storage/emulated/0/DCIM/Camera/IM3.jpg: open failed:EACCES(Permission denied)

1.  android 10编译版本, 在android10系统手机上运行时, 加载手机本地全部图片时,提示FileNotFoundException:   open failed: EACCES (Permission denied)
java.io.FileNotFoundException: /storage/emulated/0/DCIM/Camera/IM3.jpg: open failed: EACCES (Permission denied)

 

2. 在 AndroidManifest.xml 文件中, 读写权限全部添加了, 代码运行时,动态获取读写权限也判断了。但就是无法加载本地图片。


 

3. 研究了很久,试了很多方法。最后发现是10系统的安全问题,默认代码是无权限读取本地图片的,解决办法 :

在 AndroidManifest.xml 文件中,添加2行代码, android:requestLegacyExternalStorage="true"    tools:targetApi="q"

    android:requestLegacyExternalStorage="true"
    android:theme="@style/AppThemeNoActionBar"
    tools:targetApi="q"  >

4. 运行一下,完美解决问题。

 

 

关注公众号,了解更多精选文章吧。

你可能感兴趣的:(android开发)