Android11:卸载后重新获得app文件夹所有权

Android 11: regain app folder ownership after uninstall

我对 Android 11 中的存储更改有疑问。如果我理解正确,应用程序可以 read/write/delete 它创建的文件。然后我还可以像这样访问这些文件:

File path = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString() + "/ExampleApp/" + fileName);

ExampleApp 是我在 public 下载文件夹中创建的应用程序文件夹。 但是一旦应用程序被卸载,它就会失去对其创建的所有文件的所有权。有没有办法在应用程序重新安装后重新获得 ExampleApp 文件夹的所有权? 可以使用范围存储 & ACTION_OPEN_DOCUMENT_TREE,但是每次重新启动应用程序时都必须这样做,不是吗? app 文件夹中的文件在多个子文件夹中并且是非媒体格式,所以我无法使用 Media Store API.

使用的权限:

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

范围存储权限:
https://developer.android.com/training/data-storage#scoped-storage

Is there a way to regain the ownership of the ExampleApp folder by the app once it gets reinstalled?

没有

One could use scoped storage & ACTION_OPEN_DOCUMENT_TREE, but that would then have to be done on every fresh start of application, no?

没有。程序员可以在 ContentResolver 上使用 takePersistableUriPermission() 来持久访问用户选择的树。