我遇到了一個問題,因為我想為新的 Android 11 及更高版本重新編譯我的應用程式。我認為我的核心問題是這個范圍存盤。是否有任何允許的檔案路徑串列,我仍然可以根據需要讀/寫,或者我真的必須集成這個 MediaAccess API?
我要去的檔案路徑如下:
public static string XmlFilename = "Arbeitszeiten.xml";
public static string filepath = "/storage/emulated/0/Documents/Arbeitszeiten";
在 Android 10 之前它運行良好,因為我想在設備本身上保存/編輯/讀取 .xml 檔案,我需要一個“允許的”檔案路徑。我認為 Scoped Storage 會阻止訪問 /Android/data 和 ../obb 檔案夾。并且仍然可以訪問下載、圖片、檔案檔案夾。
uj5u.com熱心網友回復:
我在 kotlin 的 Android 11 上遇到了與您類似的問題。我是這樣解決的:
我在路徑 src/main/res/xml 中添加了 file_path.xml
檔案路徑
我已經使用getExternalFilesDir來獲取設備存盤中的檔案。
前:
val mPath = Environment.getExternalStorageDirectory().toString() "/Ticket_" date ".jpeg"
后:
val mPath = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES).toString() "/Ticket_" date ".jpeg"
希望能幫到你 :)
uj5u.com熱心網友回復:
幫助我的是在清單中將我的最低版本調整為 Android 10 API 29 并將目標版本調整為 Android 11 API 30。由于我沒有找到 android:requestLegacyExternalStorage 權限,我認為這只是一個臨時解決方案,但現在它有效。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/348030.html
上一篇:如何將非英文字母傳遞給Json
