【发布时间】:2021-07-24 01:45:15
【问题描述】:
我在开发者控制台中收到了来自 Google 的消息。
从 5 月 5 日开始,您必须让我们知道为什么您的应用需要广泛 存储访问
我们检测到您的应用包含 清单文件中的 requestLegacyExternalStorage 标志,或者 更多您的 app bundle 或 APK。在设备上使用应用程序的开发人员 运行 Android 11+ 必须使用范围存储来为用户提供更好的 对其设备存储的访问控制。发布您的应用程序 5 月 5 日之后的 Android 11 或更高版本,您必须:
- 更新您的应用以使用对隐私更友好的最佳做法,例如存储访问框架或 Media Store API
- 更新您的应用以在清单文件中声明所有文件访问 (MANAGE_EXTERNAL_STORAGE) 权限,并且 在 Play 管理中心完成所有文件访问权限声明 从 5 月 5 日起
- 从您的应用中完全移除所有文件访问权限
对于面向 Android 11 的应用,requestLegacyExternalStorage 标志将 被忽略。您必须使用所有文件访问权限才能保留 广泛的访问。请求访问所有文件访问权限的应用 未经允许使用的许可将从 Google Play 中删除, 并且您将无法发布更新。
我们应该怎么做才能遵守这项政策?如果我们不对 APK 进行任何修改会怎样?
我的应用的 TargetSDK 是 29。这不是问题吗?如果我不进行任何修改,我的应用会从 Google Play 中删除吗?
谷歌怎么说?
a) “如果您的应用程序目标为 29 或更低,则没问题。您无需进行任何修改,您可以继续使用 requestlegacyexternalstorage。对我们来说,如果您的应用程序目标为 30(Android 11),这一点很重要。如果您的应用程序目标 29 或更低,即使您未在清单中进行任何更改,您的应用也会生效,但如果您想要目标 30,则必须将其删除(并使用其他方法获得用户许可)"
b) “即使您的应用面向 29 或更低版本,您也必须更改清单。从清单中删除 requestLegacyExternalStorage,否则我们会将您的应用从 Google Play 中删除。”
哪一个是正确的?谷歌怎么说? a 还是 b?
如果 b 是正确的,我应该怎么做?我对图库中的图像使用此权限,而不是所有文件。
【问题讨论】:
标签: java android google-play android-permissions google-play-console