DocumentsUI 模块控制对处理文档权限的组件的特定文件的访问(例如将文件附加到电子邮件)。此模块是可更新的,这意味着它可以接收正常 Android 发布周期之外的功能更新。
将存储访问和权限纳入一个模块可以提高最终用户的隐私和安全性,同时允许 Android 合作伙伴通过运行时资源覆盖 (RRO)自定义应用程序的功能和主题。模块格式确保所有设备都提供相同的 DocumentsUI 体验,使开发人员能够了解用户看到的相关 API 的内容。
DocumentsUI 模块处理以下操作。
仅通过稳定的
@SystemApi
API 与框架交互(不使用@hide
API)。公开了一种使 Android 合作伙伴能够自定义功能和主题的机制。
使用签名权限保护
MANAGE_DOCUMENTS
权限。
显示文件启动器图标
在 Android 10 中,DocumentsUI 模块使用is_launcher_enabled
来确定文件启动器图标是否应显示在应用抽屉中。在 Android 11 或更高版本中,该模块使用component-override
包来确定文件启动器图标是否显示在应用抽屉中。
默认情况下,图标已启用。要禁用它,请将以下 XML 添加到/etc/sysconfig
。
<?xml version="1.0" encoding="utf-8"?>
<config>
<component-override package="com.android.documentsui" >
<component class="com.android.documentsui.LauncherActivity" enabled="false" />
</component-override>
</config>
请求用户数据
DocumentsUI 模块实现了GET_CONTENT
操作,使应用程序能够请求用户访问其他数据。
模块格式
DocumentsUI 模块 ( com.android.documentsui
) 以 APK 文件的形式提供,可用于运行 Android 10 或更高版本的设备。
模块依赖
这个 DocumentsUI 模块依赖于受签名权限保护的MANAGE_DOCUMENTS
权限;一个额外的权限类确保设备上只有一个应用程序具有MANAGE_DOCUMENTS
权限。