回答
在 Hamibot 中,脚本录制功能可将你的手动操作快速转换为自动化代码。你可以按照以下步骤完成录制与优化:
一、录制操作步骤
- 登录 Hamibot 控制台,进入「开发」模块并创建或打开一个脚本。
- 确保目标设备已连接,在控制台点击「设备调试」或「布局分析」验证连接状态。
- 在脚本编辑器顶部工具栏点击「录制」按钮(红色圆点图标)。
- 在已连接的手机屏幕上执行点击、滑动、输入等操作。系统会实时捕获交互并生成对应代码。
- 操作完成后再次点击录制按钮停止,生成的代码将自动插入编辑器光标位置。
二、关键注意事项
- 权限准备:录制依赖无障碍服务。你需要在手机设置中为 Hamibot 开启无障碍权限,并允许后台运行与悬浮窗权限。
- 控件稳定性:录制生成的选择器(如
id()、text())可能随应用版本或机型变化失效。建议通过「布局分析」核对控件属性,优先使用textMatches()或组合条件定位。 - 页面加载等待:录制不会自动添加等待逻辑。你必须在关键操作前插入
waitFor()或sleep(),防止因页面未渲染导致点击落空。 - 截图权限:若脚本后续需结合图像识别,请在开头调用一次
requestScreenCapture()。该函数仅申请权限,不执行实际截图,且只需执行一次。
三、代码优化示例(兼容 Rhino 1.7.15)
录制生成的代码建议补充等待与容错逻辑,示例如下:
// 文档地址 https://docs.hamibot.com/
// 等待目标控件出现后再点击,避免录制代码直接执行失败
var target = textMatches(/屏幕录制/).waitFor(5000);
if (target) {
target.click();
log('点击成功');
} else {
log('未找到目标控件');
}
四、最佳实践建议
- 录制仅用于快速生成基础交互代码,复杂流程(如循环、条件分支、数据提取)需你手动编写。
- 使用
try...catch包裹核心操作,结合toastLog()输出调试信息,便于定位执行异常。 - 脚本末尾务必调用
threads.shutDownAll()清理线程,避免残留任务干扰下次执行。 - 定期使用控制台「设备调试」功能验证选择器在不同设备上的兼容性,必要时改用相对定位或图像辅助定位。
如需查阅完整 API 列表与高级用法,请访问官方开发文档:https://docs.hamibot.com/
ℹ️ 内容由 AI 生成,可能不准确,请注意核实