Google Play 会限制应用使用高风险或敏感权限,包括一项叫作所有文件访问权限的特殊应用访问权限。该政策仅适用于符合以下条件的应用:以 Android 11(API 级别 30)为目标运行环境,并声明了 MANAGE_EXTERNAL_STORAGE
权限(这是 Android 11 中添加的一项权限)。此外,此政策不会影响对 READ_EXTERNAL_STORAGE
权限的使用。
如果您的应用不需要使用 MANAGE_EXTERNAL_STORAGE
权限,您必须将其从应用的清单中移除,才能满足政策审核要求。下文还介绍了符合政策的替代实现方案的相关细节。
如果您的应用在政策允许使用此权限的范围内,或属于可以使用此权限的例外情况,那么您必须使用 Play 管理中心内的权限声明表单声明此权限以及所有其他高风险权限。
对于不符合政策要求或未提交权限声明表单的应用,我们可能会将其从 Google Play 下架。
在什么情况下应该请求获取“所有文件访问权限”?
只有当您的应用无法有效利用更注重隐私保护的最佳实践(例如使用存储访问框架或 MediaStore API)时,您才可获取“所有文件访问权限”。请注意,您的应用不得声明不需要或不使用的权限。
核心功能
此外,应用对此权限的使用必须在允许的使用情形范围内,并且必须与应用的核心功能直接相关。核心功能即应用的主要用途。如果失去核心功能,应用就会“失效”或无法使用。对于核心功能以及构成核心功能的所有核心特性,您必须在应用说明中醒目地载明并宣传。
当应用的核心功能需要“所有文件访问权限”时,开发者必须填写权限声明表单并获得 Google Play 的批准。
“所有文件访问权限”的允许使用情形对于请求获取“所有文件访问权限”的应用,预期和允许的使用情形包括:文件管理器、备份和恢复应用、防病毒应用和文档管理应用。
获准使用此权限的应用不得将其使用情形扩展至未声明或无效的用途。
使用情形 |
可以使用的权限* |
文件管理 应用的核心用途包括访问、修改和管理(包括维护)应用专用存储空间之外的文件和文件夹 |
|
备份和恢复应用 应用必须有必要自动访问其应用专用存储空间之外的多个目录,以实现备份和恢复 |
|
防病毒应用 应用的核心用途是扫描设备并为设备用户提供防病毒安全功能 |
|
文档管理应用 应用必须能够查找、访问和修改其应用专用存储空间之外的兼容类型文件 开发者必须在 Play 管理中心内的声明中说明为何访问应用专用文件或存储访问框架(注重隐私保护的选项)文档中所提供的解决方案不足以使其应用实现相应用途 |
|
搜索(在设备上) 应用的核心用途是在设备外部存储空间内的文件和文件夹中搜索内容 |
|
磁盘/文件夹加密和锁定 应用的核心用途是加密文件和文件夹 |
|
设备间迁移/手机间转移 应用的核心用途是帮助用户迁移到新设备 |
* 需经过 Google Play 审核和批准。
对于不符合上文指定的允许使用情形的应用,在以下情况下,Google Play 可能会暂时按例外情况来处理:
- 应用需要使用该权限来实现核心功能。
- 目前没有能提供该核心功能的替代方法,或者使用注重隐私保护的替代方案(例如 MediaStore API 或存储访问框架)会对与核心功能相关的应用关键特性产生严重的不利影响。
- 应用会利用安全和隐私方面的最佳实践来降低对用户隐私的影响。
开发者必须在 Play 管理中心内的声明中说明为何使用存储访问框架或 MediaStore API 不足以使其应用实现相应用途。
在某些情况下,应用可能想使用敏感用户数据,而事实上有更安全可靠的替代方法可达成相应目的,或者使用敏感数据会带来过高的数据暴露风险。
以下列出了不可请求 MANAGE_EXTERNAL_STORAGE
权限的常见情形
使用情形 |
替代方案 |
访问媒体文件 |
借助 MediaStore API,应用可以在外部存储卷上存取媒体,而无需“所有文件访问权限”。借助 MediaStore API,用户可以轻松地检索和更新媒体文件。即使在应用卸载后,这些文件仍会保留在用户设备的外部存储卷中。 |
用户选择要导入/传输/处理的文件 |
开发者应考虑使用“存储访问框架”这一注重隐私保护的选项来访问共享存储空间内的文件。此框架支持大多数使用情形,让应用可以实现全部功能。 |
重要提示:如果您更改应用对这些受限权限的使用方式,您必须再次提交表单,提供准确的最新信息。如果未如实声明或未声明这些权限,我们可能会暂停您的应用并/或终止您的开发者帐号。