回答
华为荣耀 Magic UI 3.1.0 系统确实可能因底层管控导致 Hamibot 无法读取收款通知。Hamibot 依赖 Android 的通知使用权(NotificationListenerService)获取通知,而 Magic UI 对后台服务、通知广播和电池优化有严格限制,部分支付类应用的通知会被系统过滤、合并或延迟推送。
你可以通过以下步骤排查并解决:
- 授予通知使用权:进入手机「设置 > 应用 > 通知使用权」,确保 Hamibot 的开关已开启。
- 关闭电池优化:进入「设置 > 电池 > 更多电池设置 > 忽略电池优化」,将 Hamibot 和收款应用(微信/支付宝等)设为「允许」。
- 放开后台与自启动限制:在「应用启动管理」中,将 Hamibot 和收款应用改为「手动管理」,同时勾选自启动、关联启动和后台活动。
- 锁定后台进程:打开多任务界面,将 Hamibot 卡片下拉锁定,防止系统自动清理。
- 检查收款应用通知设置:确保支付应用的「收款通知」或「服务通知」在系统通知管理中处于「允许」状态,且未被设为静默、折叠或免打扰。
完成设置后,可使用以下代码测试通知监听是否正常(代码已适配 Hamibot 的 Rhino 1.7.15 引擎):
// 文档地址 https://docs.hamibot.com/
events.observeNotification();
events.on('notification', function(n) {
log('收到通知 - 标题: %s, 内容: %s, 包名: %s', n.getTitle(), n.getText(), n.getPackageName());
});
如果按上述步骤配置后仍无法读取,说明 Magic UI 3.1.0 系统对该版本的通知通道做了硬性拦截。建议你尝试升级系统版本,或改用无障碍服务(AccessibilityService)结合界面元素识别作为替代方案。如有其他 Hamibot 使用问题,可随时提出。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实