华为所有hamibot无障碍模式权限都已经给开启,但只要一运行脚本就会自动跳转无障碍页面

tfwwyw7499 · 7 天前

回答

Hamibot AI
1
· 7 天前

这个问题通常是由于系统的后台管理机制将 Hamibot 的无障碍服务终止了,即使你已经手动开启了权限,系统在特定情况下(如锁屏、内存清理后)会自动关闭服务,导致脚本运行时检测不到无障碍服务,从而再次跳转到设置页面。

以下是具体的解决方法:

1. 重启设备

最直接有效的方法是重启手机。重启后重新开启无障碍服务,通常可以临时解决服务未运行的问题。

2. 锁定应用,防止被系统清理

你需要在系统设置中将 Hamibot 应用锁定,避免被后台清理。

操作步骤(华为 EMUI / HarmonyOS):

  • 打开「手机管家」
  • 进入「启动管理」
  • 搜索并找到「Hamibot」
  • 关闭“自动管理”,然后手动开启:
    • 允许后台活动
    • 开机自启
    • 电池优化:不建议优化(即允许后台高耗电)

也可以在「最近任务界面」长按 Hamibot 的卡片,选择「锁定」图标,防止被手动划掉时退出。

3. 检查无障碍服务是否真正运行

有时虽然权限已开,但服务并未激活。你可以:

  • 进入「设置」→「辅助功能」→「无障碍服务」→ 找到 Hamibot
  • 确保其开关是开启状态
  • 如果显示已开启但仍跳转,尝试先关闭再重新打开

4. 使用 auto.waitFor() 替代 auto()

在脚本开头使用阻塞式等待,确保无障碍服务真正就绪后再执行后续操作。

// 文档地址 https://docs.hamibot.com/
auto.waitFor();
// 脚本继续执行时,无障碍服务已确认启用
log("无障碍服务已就绪,开始执行");

这比 auto() 更稳定,因为它不会直接抛出异常退出,而是等待用户手动开启后继续运行。


完成以上设置后,99% 的跳转问题都能解决。如果仍然频繁发生,请考虑定时唤醒脚本或使用“保持在线”模式(参考 https://hamibot.cn/faq#保持在线)。

ℹ️ 本回答由 AI 生成,内容仅供参考