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