HyperOS 特别注意:安装者声明、USB 安装拦截、西米露使用提示
HyperOS 为什么是特殊 ROM
HyperOS(原 MIUI)是 InstallerX Revived 最需要特别适配的 ROM 之一——小米/hyperOS 对安装流程做了大量自研修改,有以下特点:
- 系统应用安装强制要求安装者声明为有效系统应用
- USB 安装(ADB / Shizuku)可能被弹拦截对话框
- 部分版本无法稳定锁定第三方安装器
- 内核和 Xposed 模块生态活跃,用户群体广泛
InstallerX Revived 在 HyperOS 上做了多项自动适配,但某些场景仍需要手动配合。
自动声明 com.android.shell
HyperOS 上安装或更新系统应用时,系统会检查安装请求里的"安装者包名"——必须是系统级应用才能继续,否则会弹:
"安装系统 app 需要声明有效安装者"
InstallerX Revived 在 HyperOS 上启动时会自动给默认配置添加:
- 安装者声明 =
com.android.shell(Shell 是系统级进程) - 安装来源 = 发起安装的应用本身(普通应用)
这个声明是自动完成的,普通用户不需要改。高级用户如果需要用其他包名作为系统安装者(比如文件管理器、应用商店本身),可以在配置文件里手动修改安装者声明字段。
哪些包名有效
HyperOS 上通常有效的系统级安装者:
com.android.shell(默认选这个)com.android.fileexplorer(小米文件管理器)com.android.vending(Google Play)
如果以上都不生效(HyperOS 更新了策略),可以在"安装者声明"里试填不同的系统应用包名。
USB 安装拦截导致锁定失效
HyperOS 会以对话框形式拦截 USB 安装请求(ADB / Shizuku 发起的安装)。典型流程:
- 你通过 Shizuku 发起一个全新应用的安装
- HyperOS 弹"要不要允许 USB 安装这个应用"对话框
- 如果你点了"拒绝" → 系统会撤销 InstallerX 的默认安装器身份,强制切回系统默认安装器
- 你后续再装东西,都走系统安装器,InstallerX 收不到请求
恢复方式
- 主页 → 默认安装器状态卡 → 重新执行手动锁定
- 自动锁定功能已移除,不会每次启动自动尝试
根本解决方案
InxLocker Xposed 模块——它通过 Hook 层直接拦截安装 intent 并转发给 InstallerX,绕过 HyperOS 的 USB 安装拦截。装了 InxLocker 后,HyperOS 弹的那个拦截对话框不会再出现,你点"允许"或"拒绝"都不影响 InstallerX 的接管状态。
西米露(Xiaomi ADB 和 Fastboot Tools)
如果你用西米露(Xiaomi ADB/Fastboot 工具)刷内核或做系统操作,在"系统框架 → 其他"里有一个 "使用原生安装器" 选项:
- 开启后,刷入 ROM 时会让系统用 AOSP 原生的
com.android.packageinstaller作为包管理器 - 这时候 InstallerX 应该刷入匹配 AOSP 包名的版本(
com.android.packageinstaller) - 如果关闭,刷入的 ROM 会用 HyperOS 自己的包管理器包名
刷系统包管理器之前,先确认你当前的 HyperOS 版本用的是哪个包名,刷匹配的版本。
小米超级岛通知
HyperOS 3.0.300+ 支持小米超级岛(灵动岛样式通知)。InstallerX Revived 在"设置 → 安装器设置 → 通知设置 → 小米超级岛"下提供:
- 超级岛开关
- 绕过限制(只有明确知道影响时才改)
- XMSF 断网时长
- 外发光效果
默认值已经覆盖大多数场景,不建议随意调整。
HyperOS 2.x / 旧版 MIUI
InstallerX Revived 官方测试覆盖的是 HyperOS 3.0+。HyperOS 2.x 以及更早的 MIUI:
- 可能能运行但 UI 有错位(浮动底栏位置不对、弹窗位置偏移)
- 功能可能部分受限
- 遇到问题请带上 HyperOS 版本号反馈
HyperOS 版本可以在"设置 → 关于手机"里找到。
HyperOS 上 InstallerX 与系统更新的关系
重要:InstallerX Revived 不是系统更新工具。如果你把 InstallerX 刷成了系统包管理器,然后系统 OTA 更新,可能会导致系统自动恢复原包管理器(因为 OTA 包里写死了原包管理器的包名和路径)。
解决办法:OTA 更新后检查安装器状态,如果被恢复了,重新刷一次 InstallerX 的模块即可。