在 HyperOS 中,双击电源键默认打开Mi Pay。此模块可以让 HyperOS 双击电源键打开 Google钱包 快捷刷卡页面。
- 快速打开付款页面:直接启动 Google 钱包的付款卡片界面,无需手动进入。
- 支持锁屏启动:允许付款页面显示在锁屏上方,实际支付仍遵循 Google 钱包的身份验证要求。
- 避免重复启动:设置 800ms 触发间隔,防止多个 Hook 同时执行导致钱包重复打开。
- 轻量化设计:无需额外权限,没有独立界面和后台服务,APK 大小约 20 KB。
模块主要 Hook system_server 中与电源键快捷操作相关的方法,并修改其原有行为。
| Hook 位置 | 功能 |
|---|---|
MiuiSingleKeyRule / PowerKeyRule |
拦截 getFunction("double_click_power_key"),修改双击电源键对应的快捷操作 |
ShortCutActionsUtils.launchDefaultWallet |
拦截系统默认钱包启动方法,改为启动 Google 钱包 |
ActivityRecord.canShowWhenLocked |
允许 Google 钱包的付款页面显示在锁屏上方 |
PhoneWindowManager.powerPress |
兼容 AOSP 电源键处理逻辑,在检测到双击操作时启动 Google 钱包 |
模块会优先尝试启动 Google 钱包的 PresentationModeActivity,以直接显示付款卡片页面。
如果当前 Google 钱包版本不存在该 Activity,则回退到应用默认启动入口。
各 Hook 独立处理,即使部分方法在当前系统版本中不存在,也不会影响其他 Hook 的执行。
如果模块没有正常工作,可以在 LSPosed 日志中搜索 QuickWallet。
正常安装 Hook 后,日志中会包含类似内容:
QuickWallet: getFunction hooked x1
QuickWallet: launchDefaultWallet hooked x1
QuickWallet: canShowWhenLocked hooked
QuickWallet: com.android.server.policy.PhoneWindowManager powerPress hooked x1
常见日志说明:
| 日志内容 | 说明 |
|---|---|
hooked x0 / not found |
未找到对应方法,可能是系统版本差异 |
Google Wallet is not installed |
设备未安装 Google 钱包 |
launch failed |
Google 钱包启动失败,需要查看详细异常日志 |
本项目仅用于学习和技术研究,与 Google、小米及 LSPosed 项目无官方关联。
模块涉及系统框架 Hook,不同设备和系统版本可能存在兼容性问题。使用前请自行评估风险。
本项目基于 GNU General Public License v3.0 (GPL-3.0) 开源。
本项目的开发由 Claude 和 OpenAI Codex 提供 AI 辅助支持。