關於10.0出現open failed: EACCES (Permission denied)相冊圖片為空白的解決方法


解決方法

剛開始在AndroidManifest.xml已經聲明了讀寫權限,

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

但在訪問相冊的時候,還是報錯:

open failed: EACCES (Permission denied)

網上的從手機設置里改權限、或者隨用隨檢驗存儲權限啥的在我這都不管用。

又發現了一個有效方法,在AndroidManifest.xml添加一句:

android:requestLegacyExternalStorage="true"

然后成功解決問題!

原因

Android Q分區存儲權限變更及適配問題:

為了讓用戶更好地控制自己的文件,並限制文件混亂的情況,Android Q修改了APP訪問外部存儲中文件的方法。外部存儲的新特性被稱為Scoped Storage。

Android Q仍然使用READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE作為面向用戶的存儲相關運行時權限,但現在即使獲取了這些權限,訪問外部存儲也受到了限制。APP需要這些運行時權限的情景發生了變化,且各種情況下外部存儲對APP的可見性也發生了變化。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM