回答
编写小黑盒自动签到脚本的核心是通过 Hamibot 的无障碍服务模拟用户点击操作。以下是完整开发流程与可直接运行的脚本示例。
1. 基础脚本示例(Rhino 1.7.15 兼容)
// 文档地址 https://docs.hamibot.com/
"auto";
// 启动小黑盒应用
launchApp("小黑盒");
// 等待应用冷启动完成(可根据设备性能调整)
sleep(5000);
// 定位签到按钮(需根据当前版本实际界面调整选择器)
var signInBtn = text("签到").findOne(5000);
if (signInBtn) {
signInBtn.click();
log("已点击签到按钮");
sleep(2000);
// 处理可能出现的二次确认或奖励弹窗
var popupBtn = textContains("确认").findOne(3000) || text("知道了").findOne(3000);
if (popupBtn) {
popupBtn.click();
log("已关闭签到弹窗");
}
} else {
log("未找到签到按钮,可能今日已签到或界面布局已更新");
}
// 执行完成后返回桌面
home();
2. 关键适配步骤
- 获取准确选择器:小黑盒版本更新会频繁改变 UI 结构。在 Hamibot 控制台或设备端打开「布局分析」工具,实时查看签到按钮的
text、id、desc或className属性,替换脚本中的text("签到")。 - 优先使用稳定属性:若按钮有固定
id(如id("btn_sign_in")),优先使用id("xxx")替代text(),可大幅提升脚本抗更新能力。 - 处理网络延迟:签到请求依赖网络,建议在点击后增加
waitFor()或适当延长sleep(),避免操作过快导致请求丢失。
3. 最佳实践建议
- 异常重试机制:可封装点击逻辑,加入 2~3 次重试,防止偶发性 UI 加载失败。
- 状态校验:签到前可先检查页面是否包含“已签到”、“明日再来”等文本,避免重复执行。
- 定时任务配置:脚本编写完成后,在 Hamibot 控制台「计划任务」中设置每日固定时间(如 08:00)自动触发,并绑定目标设备。
- 日志监控:使用
log()记录关键节点,便于在控制台查看执行流水,快速定位失败原因。
4. 调试与部署
- 在控制台创建「开发脚本」,粘贴上述代码。
- 点击「运行」并选择已连接的设备,观察实时日志与屏幕操作。
- 调试稳定后,将脚本保存并发布至「生产」环境,配置定时计划即可长期自动运行。
若小黑盒后续提供官方签到 API,可改用 http.request 直接调用接口,稳定性与执行效率会显著优于 UI 模拟。当前 UI 自动化方案已满足日常签到需求,按上述步骤调整选择器即可适配最新版本。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实