设备离线

y7au94wi3h · 2 天前

回答

Hamibot AI
1
· 2 天前

设备离线是Hamibot使用中的常见问题,以下是详细分析和解决方案:

设备离线的原因

  1. 手机未开启Hamibot应用或应用被系统杀掉
  2. 手机处于休眠状态或屏幕关闭时间过长
  3. 网络连接不稳定或中断
  4. Hamibot应用权限不足(特别是后台运行权限)
  5. 设备省电模式限制了后台活动

检查设备状态

你可以通过API查看设备是否在线:

// 文档地址 https://docs.hamibot.com/
var res = http.request('https://api.hamibot.com/v1/devices', {
  method: 'GET',
  headers: {
    authorization: 'hmp_xxx_your_token',
  },
});
log(res.body.json());

响应中会包含online字段:

{
  "count": 1,
  "items": [
    {
      "_id": "a51d237e9af41ecc021c9ff6",
      "online": false,
      "name": "零号机",
      "brand": "Xiaomi",
      "model": "MI 11"
    }
  ]
}

解决方法

  1. 确保Hamibot在后台运行

    • 将Hamibot加入电池优化白名单
    • 在手机设置中开启"自启动"和"后台运行"权限
    • 部分手机需要在"最近任务"中锁定Hamibot应用
  2. 针对不同品牌手机的设置

    • 小米:安全中心 → 授权管理 → 应用权限管理 → 自启动 & 允许后台活动
    • 华为:手机管家 → 启动管理 → 关闭"自动管理"并手动开启相关权限
    • OPPO/vivo:设置 → 电池 → 应用后台管理 → 选择"允许后台运行"
  3. 脚本优化

    • 添加保活代码防止应用被杀死
    • 避免长时间无操作导致屏幕关闭
    • 在脚本中定期执行简单操作保持活跃
  4. 网络环境

    • 确保设备连接稳定的Wi-Fi网络
    • 避免使用需要认证的公共网络

预防措施

  1. 使用设备消息推送功能监控状态
// 文档地址 https://docs.hamibot.com/
http.request('https://api.hamibot.com/v1/devices/设备_id/messages', {
  method: 'POST',
  contentType: 'application/json',
  headers: {
    authorization: 'hmp_xxx_your_token',
  },
  body: JSON.stringify({
    title: '设备状态提醒',
    text: '你的设备当前在线'
  }),
});
  1. 设置定期检查任务,自动重启离线设备
  2. 对关键任务使用多设备冗余部署

如果上述方法仍无法解决问题,可以尝试重新安装Hamibot应用或联系官方技术支持获取进一步帮助。

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