如何录制脚本

HAMI_2108874727 · 12 小时前

回答

Hamibot AI
1
· 12 小时前

Hamibot 支持通过无障碍服务录制脚本,以下是关于录制脚本的机制、使用方法及注意事项:

1. 核心机制

Hamibot 的录制功能基于无障碍服务(Accessibility Service)。当你开启录制并进行操作时,系统会记录你的点击、滑动等动作,并生成相应的脚本文件。录制生成的脚本文件后缀通常为 .auto

2. 录制流程

  1. 权限配置:确保 Hamibot 应用已获得无障碍服务权限,这是录制功能正常工作的基础。
  2. 开始录制:在 Hamibot 客户端中启动录制功能。
  3. 执行操作:在手机上进行你需要自动化的操作,例如点击按钮、滑动列表等。
  4. 结束录制:操作完成后停止录制,系统会自动保存脚本文件。

3. 脚本特性

录制生成的脚本与手动编写的脚本在代码实现上有所不同:

  • 坐标点击:录制脚本通常使用坐标区域来描述点击操作,例如 click(left, top, bottom, right)。这种方式使用长方形区域的像素距离来定位点击位置。
  • 控件识别限制:录制脚本主要依赖屏幕坐标,对于图标类按钮(如朋友圈照相机图标)或没有文本的控件,录制功能会通过记录区域 bounds 属性来生成点击代码。
  • 代码生成:通过无障碍服务录制脚本会自动生成相应的操作语句,例如 longClickscrollUpscrollDown 等。

4. 运行录制脚本

录制好的 .auto 文件可以通过引擎 API 进行运行。使用 engines.execAutoFile 函数可以在新的脚本环境中运行录制文件。

示例代码:

// 运行录制文件
engines.execAutoFile("/sdcard/脚本/1.auto");

配置项说明:

  • delay:延迟执行的毫秒数,默认为 0。
  • loopTimes:循环运行次数,默认为 1。0 为无限循环。
  • interval:循环运行时两次运行之间的时间间隔,默认为 0。

5. 最佳实践与建议

  • 兼容性注意:录制脚本基于坐标区域,不同屏幕分辨率或设备尺寸可能导致点击位置偏差。建议在固定分辨率的设备上运行,或使用布局分析工具辅助校正。
  • 布局分析工具:在悬浮窗中使用布局分析工具查看控件的 bounds 属性,可以帮助 you 精确定位点击区域,特别是在录制无法准确识别控件时。
  • 稳定性优化:对于长期运行的任务,建议结合控件识别(如 click(text, i))手动优化录制脚本,以提高自动化任务的效率和可靠性,减少因界面微小变动导致的失败。
  • 停止脚本:如需停止所有正在运行的脚本(包括录制脚本),可以使用 engines.stopAll()engines.stopAllAndToast()

通过合理使用录制功能并结合手动代码优化,你可以更高效地开发自动化任务。

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