Android MANAGE_EXTERNAL_STORAGE 社交网络应用的 Google playstore 拒绝权限

Android MANAGE_EXTERNAL_STORAGE permission reject by Google playstore for social networking app

我创建了社交网络应用程序,它也有内置的消息传递部分。因此,为此我需要发送和接收文件并需要访问所有文件(包括 PDF、APK、DOC 或原始文件),例如 whatsapp/telegram 或其他即时消息应用程序。

我尝试一一删除 android:requestLegacyExternalStorage="true"MANAGE_EXTERNAL_STORAGE 它们不再在我的应用程序的自定义图库中显示文件和媒体。

当我填写 Sensitive Permission 声明表时,我在那里提到我有一个聊天应用程序,但没有向他们展示它不限于媒体文件,但在 whatsapp/telegram 和 Duo 有的地方仍然被拒绝访问 management of all files。那么我如何获得 MANAGE_EXTERNAL_STORAGE 许可以及我需要以何种形式告诉他们才能在下一次更新中获得此许可

根据您在 post 中所说的内容,您的应用不符合 MANAGE_EXTERNAL_STORAGE 许可的条件,如 Use of all files access permission policy

所解释的

In some cases, apps may wish to access sensitive user data for purposes where a safer and more secure alternative exists, or where risk of data exposure doesn't warrant access.

  • Media files access (see Alternatives below)
  • Any file selection activity where the user manually selects individual files (see Alternatives below)

同一页面列出了符合 MANAGE_EXTERNAL_STORAGE 条件的应用类型,但社交网络和聊天应用均未包括在内。

Telegram/WhatsApp/etc...(据我所知)没有 MANAGE_EXTERNAL_STORAGE 许可,但他们有:

  • targetSdkVersion=29
  • android:requestLegacyExternalStorage="true"
  • 请求READ_EXTERNAL_STORAGE

如果这三个都为真,并且该应用在 Android 11+ 上 运行,则权限屏幕显示“允许管理所有文件”,因为该应用有权访问所有这些文件。这在“针对任何版本”下进行了解释 here

Users can see which apps have the READ_EXTERNAL_STORAGE permission in system settings. On the Settings > Privacy > Permission manager > Files and media page, each app that has the permission is listed under Allowed for all files.

在将 targetSdkVersion 设置为 30 之前,应用程序似乎需要更新才能在没有 MANAGE_EXTERNAL_STORAGE 的情况下工作。这可以通过使用系统文档选择器代替您自己的来完成,或按照以下步骤允许有权访问该数据的应用 share it with yours.