“所有文件访问权限”(MANAGE_EXTERNAL_STORAGE) 的使用

出于新型冠状病毒肺炎 (COVID-19) 方面的考虑,在 2021 年初之前,所有目标运行环境为 Android 11(API 级别 30)且请求“所有文件访问权限”的应用都无法上传到 Google Play。限制范围包括新应用以及现有应用的更新。这项暂时性上传限制只会影响同时存在以下两种情形的应用:目标运行环境为 Android 11(API 级别 30)并且请求“所有文件访问权限”。

目前,如果您认为自己的应用需要使用“所有文件访问权限”,建议您暂时不要将目标 SDK 级别更新为 Android 11(API 级别 30)。如果您的应用以 Android 10 为目标运行环境,请考虑使用 requestLegacyExternalStorage 标记

Google Play 会限制应用使用高风险或敏感权限,包括一项叫作所有文件访问权限的特殊应用访问权限。

如果您的应用不需要“所有文件访问权限”,您必须从应用的清单中移除此权限才能成功发布应用。下文还详细介绍了符合政策的替代实现方式的相关细节。

如果您的应用在政策允许使用的范畴内,或属于可以使用这些权限的例外情况,那么您必须使用 Play 管理中心内的声明表单声明此权限以及所有其他高风险权限

对于不符合政策要求或未提交声明表单的应用,我们可能会将其从 Google Play 中移除。

在什么情况下应该请求“所有文件访问权限”?

只有当您的应用无法有效利用更有利于保护隐私权的最佳做法(例如使用存储访问框架Media Store API)时,您才可获取“所有文件访问权限”。

此外,应用对此权限的使用必须在允许的使用情形范围内,并且必须与应用的核心功能直接相关。核心功能即应用的主要用途。如果失去核心功能,应用就会“失效”或无法使用。核心功能以及构成核心功能的所有核心特征都必须在应用的文档中重点说明并在应用介绍中进行宣传。

全部收起 全部展开

“所有文件访问权限”的允许使用情形

对于请求获取“所有文件访问权限”的应用,预期和允许的使用情形包括:文件管理器、备份和恢复应用、防病毒应用和文档管理应用。

获准使用此权限的应用不得将其使用情形扩展至未声明或无效的用途。

使用情形

可以使用的权限*

文件管理

(应用的核心用途包括访问、修改和管理应用专用存储空间之外的文件)

MANAGE_EXTERNAL_STORAGE

备份和恢复应用

(应用必须有必要自动访问其应用专用存储空间之外的多个目录,以实现备份和恢复)。

MANAGE_EXTERNAL_STORAGE

防病毒应用

(应用的核心用途是扫描设备并为设备用户提供防病毒安全功能)

MANAGE_EXTERNAL_STORAGE

文档管理应用

(应用必须能够查找、访问和修改其应用专用存储空间之外的兼容类型文件)

开发者必须在 Play 管理中心内的声明中说明为何访问应用专用文件存储访问框架文档中所提供的解决方案不足以使其应用实现相应用途。

MANAGE_EXTERNAL_STORAGE


* 需经过 Google Play 审核和批准。

例外情况

对于不符合上文指定的允许使用情形的应用,在以下情况下,Google Play 可能会暂时按例外情况来处理:

  1. 应用需要使用该权限来实现核心功能;并且
  2. 目前没有替代方法能提供该核心功能;或者

使用有利于保护隐私权的替代方案(例如 MediaStore API存储访问框架)会对与核心功能相关的应用关键特征产生严重的不利影响。

  1. 应用利用安全性和隐私权方面的最佳做法来降低对用户隐私的影响

开发者必须在 Play 管理中心内的声明中说明为何使用存储访问框架MediaStore API 不足以支持其应用实现相应用途。

注意:除了需要访问权限的重要服务外,运营商应用和原始设备制造商 (OEM) 服务也可针对上述使用情形请求访问权限。

政策例外情况

如果您的旧版 APK 具有短信/通话记录权限,而且您无法再更改这些 APK 中的代码,则可以申请政策例外情况。

您必须满足以下所有要求才能申请政策例外情况:

  • 您必须声明想要为其申请政策例外情况的特定 APK。

  • 要申请例外情况的 APK 必须已在 2019 年 1 月 1 日之前发布

  • 您必须向 Android 10(API 级别 29)或更高版本的用户提供备用 APK,并且这些 APK 必须符合“所有文件访问权限”(MANAGE_EXTERNAL_STORAGE) 政策的要求

  • 要申请例外情况的 APK 所影响的用户范围在您的应用安装总量中必须只占小一部分(不超过几个百分点)

  • 申请例外情况的 APK 不得给用户带来安全漏洞或隐私权漏洞,并且不得向第三方提供文件数据

Google Play 会审核政策例外情况申请,并根据具体情况决定是否批准。或者,您可以选择取消发布违规的 APK,以遵守“所有文件访问权限”政策。另请注意,即使应用符合此政策的例外情况,也仍需遵守适用于整个 Play 商店的政策措施(例如 Google Play 的目标 APK 级别要求),并可能会受到这些政策措施的影响。

无效使用情形

在某些情况下,应用可能想使用敏感用户数据,而事实上有更安全可靠的替代方法可达成相应目的,或者使用敏感数据会带来过高的数据暴露风险。

以下列出了不可请求 MANAGE_EXTERNAL_STORAGE 权限的常见情形

  • 媒体文件访问(请参阅下方的替代方案
  • 让用户以手动方式逐个选择文件的任何文件选择操作(请参阅下方的替代方案

注意:此列表仅列出了部分情形。如需详细指南,请参阅面向开发者的所有文件访问权限文档和分区存储最佳做法指南。

常见使用情形的替代方案

使用情形

替代方案

访问媒体文件

借助 MediaStore API,应用可以在外部存储卷上存取媒体,而无需“所有文件访问权限”。

用户选择要导入/传输/处理的文件

您可以通过多种更有利于保护隐私权的方式来访问共享存储空间内的文件,包括使用存储访问框架和系统文件选择器。

重要提示:如果您更改应用对这些受限权限的使用方式,您必须再次提交表单,提供准确的最新信息。如果未如实声明或未声明这些权限,我们可能会暂停您的应用并/或终止您的开发者帐号。

该内容对您有帮助吗?
您有什么改进建议?

需要更多帮助?

登录可获取更多支持选项,以便快速解决您的问题