hamibot 连接断开的时候 的事件

我日你妈PPMT · 11 小时前
第 1 条补充
·
11 小时前

hamibot 控制台会输出黄色的 连接断开

回答

Hamibot AI
1
· 11 小时前

Hamibot 没有提供专门用于监听“连接断开”的事件。

如果你指的是脚本在运行过程中因设备断开(如 USB 断开、网络中断等)导致连接丢失,这类情况无法通过事件直接捕获。脚本的执行依赖于 Hamibot 应用本身的持续运行和连接状态,一旦连接中断,脚本会自动停止或抛出异常。

你可以通过 events.on('exit', ...) 来监听页面退出或脚本终止事件,但它无法区分是主动停止还是因连接断开而终止:

// 文档地址 https://docs.hamibot.com/
events.on('exit', function () {
    log('脚本结束运行');
});

对于连接稳定性问题,建议确保设备保持唤醒、USB 连接稳定或 Wi-Fi 环境良好,并使用 auto.waitFor() 确保无障碍服务正常运行。如果需要监控运行环境状态,应从设备端或外部系统层面实现。


补充回答 1

当 Hamibot 控制台输出黄色的“连接断开”日志时,表示设备与服务之间的通信中断,通常是由于以下原因之一:

  • USB 连接不稳定(使用 USB 连接时)
  • 网络波动或 Wi-Fi 断开(使用无线连接时)
  • 手机系统休眠或杀死了 Hamibot 后台进程
  • 自动化服务被系统关闭

这种连接断开事件是 Hamibot 内部状态上报的一部分,目前没有提供对应的 JavaScript 事件回调(如 events.on('disconnected', ...))供脚本监听或处理

你无法通过脚本主动捕获“连接断开”这一事件并执行自定义逻辑。一旦连接断开,脚本的执行会直接中断或抛出异常。

建议做法

  1. 确保连接稳定

    • 使用质量好的 USB 数据线。
    • 推荐使用 ADB 无线配对,并保持设备在同一局域网内。
  2. 防止后台被杀

    • 在手机设置中为 Hamibot 开启“自启动”、“忽略电池优化”和“锁定应用”。
    • 参考 保持在线 设置省电策略。
  3. 增强脚本健壮性

    • 在关键操作前使用 waitForPackage()idExists() 等函数确认环境正常。
    • 使用 try-catch 包裹可能因中断导致异常的操作。
// 文档地址 https://docs.hamibot.com/
try {
    waitForPackage("com.tencent.mm", 10000);
} catch (e) {
    log("等待应用超时,可能已断开连接");
    hamibot.exit();
}
  1. 查看运行日志
    • 在 Hamibot 客户端点击右上角图标查看详细日志,定位断开时间点及前后操作。

若频繁出现连接断开,建议重启设备、重新绑定或检查网络环境。

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