Android10(API 29)getExternalStorageDirectory没权限解决


在Android开发时,一般我们使用以下代码获取储存路径,获取到的结果一般是/storage/emulated/0

Java
Environment.getExternalStorageDirectory().getAbsolutePath()

 

 

然而在Android10(API 29)以后获取到这个路径获取,发现却没有权限访问,无论你在AndroidManifest.xml文件中加上对应的权限还是使用ActivityCompat.requestPermissions动态申请到权限还是没有解决!

 

百度些久,发现都是比较旧的信息,根本解决不了问题,于是看下官方的文档,马上解决了。 

 

解决方法:

在AndroidManifest.xml文件中application节点中加上android:requestLegacyExternalStorage="true"属性就可以了,如下:

Markup
<application
    android:requestLegacyExternalStorage="true"

 

 

 

 

参考官方文档:  https://developer.android.google.cn/training/data-storage/compatibility


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM