安装来源声明与安装者:HyperOS/Vivo 系统应用安装必备
五个元数据字段
配置文件里有五个与"安装元数据声明"相关的字段,都在配置详情页的"安装者设置"或类似分组下。普通应用安装时这些字段不重要——但 HyperOS、Vivo 的系统应用安装必须正确声明才能绕过拦截。
1. 安装者声明(Installer Package Name)
安装者包名——告诉 Android 系统"是哪个应用"在执行安装。HyperOS 上安装或更新系统应用时,系统要求"安装者"本身必须是系统应用,否则会弹 "安装系统 app 需要声明有效安装者" 的拦截。
怎么填:
- HyperOS:默认配置里 InstallerX 会自动填
com.android.shell(Shell 是系统级应用),通常不需要改 - Vivo:需要填 Vivo 应用商店的包名(具体包名因设备而异)
- 其他 ROM:留空即可,InstallerX 自己会处理
谁支持:Root / Shizuku 可用;Dhizuku 不支持。
2. 安装来源(Installation Source)
告诉系统安装包来自哪里。可选项:
- InstallerX 自身
- 发起安装的应用(比如酷安、文件管理器)
- 自定义包名(填一个已安装应用的包名)
普通应用不需要改这个。HyperOS 上 InstallerX 已经自动处理了。
3. 安装请求方(Originating UID / Requester)
覆盖安装来源的包名。填的包名必须已经安装在设备上。这个功能默认关闭——需要到"设置 → 安装器设置 → 安装请求方设置"里开启,配置文件里才会出现对应字段。
高级场景用,比如你想告诉系统"这个安装请求来自某个应用"但实际不是那个应用发起的。普通用户不需要。
4. 安装原因(Install Reason)
向 Android 声明为什么安装这个应用。选项:
- 用户(USER):普通应用首次安装(推荐)。部分启动器会自动创建桌面图标
- 设备所有者(DEVICE_OWNER):企业管理设备
- 未指定:默认,不声明任何原因
5. 软件包来源(Package Source)
声明安装包的来源渠道:
- 应用商店
- 本地文件
- 下载文件
- 其他来源
- 未指定来源
Android 可能会对不同来源施加不同限制——"本地文件"和"下载文件"有时会触发额外的安装检查。如果 InstallerX 识别错了来源,你可以手动纠正。
如何修改
这些字段在每个配置文件里独立设置。你可以:
- 默认配置里声明 HyperOS 需要的安装者
com.android.shell - 给一个作用域绑定了"酷安/应用商店"的自定义配置里,把安装者声明改成"发起安装的应用"本身(因为酷安装普通应用不需要系统安装者)
这样 HyperOS 更新系统应用(命中默认配置)走 com.android.shell,酷安装普通应用(命中自定义配置)走酷安本身——两边都不会被系统拦截。
对话框模式下临时改
在对话框安装模式下,点击"扩展菜单" → 找到安装来源 / 安装者声明 → 可以临时修改这次安装的声明参数,不需要改配置文件。适合你偶尔需要用非默认安装者的时候。
系统包管理器模式
当 InstallerX 替换了系统包管理器后,部分元数据能力(如自定义安装来源)会被系统接管——因为它就是"系统自己",系统不会让系统自己去篡改自己的元数据。这种场景下这些字段会变灰或隐藏,属于正常行为。