我最近在google商店上发布了我的应用程序,但由于我声明了MANAGE_EXTERNAL_STORAGE许可,所以它被拒绝了,我需要该许可来访问Android11和更高版本的照片。因此,我的问题是,在android 11及以上的系统中,是否有其他方式可以在没有此许可的情况下访问照片?
发布于 2022-08-10 05:53:48
使用意图为应用程序打开“所有文件访问”
Intent intent = new Intent();
intent.setAction(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION);
Uri uri = Uri.fromParts("package", this.getPackageName(), null);
intent.setData(uri);
startActivity(intent);我首先使用了媒体商店,但它不适用于android 11,以及更多的12 ,13。
但是这可能是拒绝播放控制台上的应用程序的一个机会,但是您可以在控制台上修改它(核心功能或应用程序功能),这可能会对您有所帮助。
发布于 2022-08-10 05:58:18
从MANAGE_EXTERNAL_STORAGE中删除AndroidManifest.xml并尝试使用下面的代码
<application
android:requestLegacyExternalStorage="true" // add this line
// ADD THIS
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
android:enabled="true"
android:exported="false"
android:grantUriPermissions="true"
android:initOrder="100"
android:permission="android.permission.MANAGE_DOCUMENTS">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provide_paths" />
</provider>provide_paths.xml
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-path
name="external_files"
path="." />
<root-path
name="external_files"
path="/storage/" />
</paths>发布于 2022-08-10 06:13:38
您可以查询MediaStore中的图像。
您可以使用ACTION_PICK,ACTION_GET_CONTENT,ACTION_OPEN_DOCUMENT让用户选择-多个图像.
您可以使用ACTION_OPEN_DOCUMENT_TREE让用户选择一个包含图片的目录。
https://stackoverflow.com/questions/73301196
复制相似问题