[英]Read file in internal Download folder Android R
在 Android R 上,我可以在下載文件夾中寫入文件。 如果我嘗試讀取文件,我會拒絕 IOException 訪問。
zis = new ZipInputStream(new BufferedInputStream(new FileInputStream(Environment.getExternalStorageDirectory().getAbsolutePath() +
"/Download/saves.zip")));
在 Android R 或從哪個文件夾讀取文件的正確方法是什么?
我在用着
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
android:requestLegacyExternalStorage=”true”
編輯:新代碼
ContentValues contentValues = new ContentValues();
contentValues.put(MediaStore.Downloads.DISPLAY_NAME, "saves.zip");
contentValues.put(MediaStore.Downloads.MIME_TYPE, "application/zip");
Uri uri = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.Q) {
uri = MediaStore.Downloads.getContentUri(MediaStore.VOLUME_EXTERNAL);
}
Uri itemUri = getContentResolver().insert(uri, contentValues);
zis = new ZipInputStream(getContentResolver().openInputStream(itemUri));
從 Android 11 開始,使用范圍存儲 model 的應用程序只能訪問自己的應用程序特定緩存文件。
所以最好使用應用程序的共享數據文件夾來寫入/讀取您的文件。
這是完整的描述。
https://developer.android.com/about/versions/11/privacy/storage#permissions-target-11
在 Android R 上,我可以在下載文件夾中寫入文件。
如果您的應用程序可以在某處寫入文件,那么它肯定可以讀取該文件。
你的問題沒有意義。
有什么你沒有告訴的嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.