能不能实时录制

已存档
HAMI_4118455659 · 21 天前
第 1 条补充
·
21 天前

怎么进行动作录制,我没找到地方

回答

Hamibot AI
1
· 21 天前

Hamibot 支持动作录制功能,同时也支持实时截屏,但两者用途不同:

  1. 动作录制:Hamibot 支持录制用户的触控操作(如点击、滑动),生成 .auto 格式的录制文件。录制完成后,可以通过脚本调用引擎接口来运行这些录制文件。
  2. 屏幕画面:Hamibot 提供 captureScreen() 接口进行实时截屏,常用于 OCR 识别或图像比对,但不支持直接录制视频流文件。

运行录制文件示例

你可以使用 engines.execAutoFile 来运行已录制的 .auto 文件。

// 文档地址 https://docs.hamibot.com/
// 运行录制文件
engines.execAutoFile("/sdcard/脚本/1.auto");

实时截屏示例

如果你需要通过截屏进行实时画面分析,可以使用以下代码:

// 文档地址 https://docs.hamibot.com/
if (!requestScreenCapture()) {
    toastLog('没有授予 Hamibot 屏幕截图权限');
    hamibot.exit();
}
sleep(1000);
log('开始截屏');
const img = captureScreen();
// 此处可进行 OCR 识别或图像处理
// const res = ocr.recognizeText(img);
// toastLog(res);
hamibot.exit();

建议

  • 录制文件管理:录制的 .auto 文件通常保存在设备存储中,确保路径权限正确。
  • 性能优化:频繁调用 captureScreen() 会消耗较多资源,建议在必要时才进行截屏。
  • 兼容性:脚本运行环境基于 Rhino 1.7.15,编写代码时请避免使用箭头函数等 ES6+ 新特性。

补充回答 1

动作录制功能通常位于 Hamibot 应用的脚本管理界面中。如果你没有找到,可能是权限未开启或入口隐藏。以下是找到并使用动作录制的详细步骤:

1. 开启必要权限

录制动作需要 无障碍服务权限悬浮窗权限

  • 进入 Hamibot 设置界面,确保“无障碍服务”已开启。
  • 在安卓系统设置中,允许 Hamibot 显示悬浮窗。

2. 找到录制入口

有两种主要方式启动录制:

方式一:通过脚本创建页面

  1. 打开 Hamibot 应用。
  2. 点击底部导航栏的 脚本
  3. 点击右下角的 + 号(创建脚本)。
  4. 选择 录制 选项(通常显示为“录制脚本”或类似图标)。
  5. 点击开始录制,屏幕会出现录制控制条。

方式二:通过悬浮球(如果已启用)

  1. 在 Hamibot 设置中开启“悬浮球”或“录制悬浮窗”。
  2. 返回桌面或其他应用,点击悬浮球。
  3. 选择 开始录制

3. 执行录制

  • 点击开始后,你在屏幕上的点击、滑动、输入文本等操作都会被记录。
  • 录制完成后,点击悬浮条上的 停止 按钮。
  • 输入脚本名称并保存,系统会生成一个 .auto 格式的录制文件。

4. 运行录制文件

录制好的文件可以通过其他脚本调用运行,实现自动化组合。以下是一个调用录制文件的示例代码:

// 文档地址 https://docs.hamibot.com/
// 定义录制文件路径,通常在 /sdcard/脚本/ 目录下
var path = "/sdcard/脚本/我的录制.auto";

// 检查文件是否存在
var file = files.file(path);
if (file.exists()) {
    toastLog("开始运行录制文件");
    // 执行录制文件
    engines.execAutoFile(path);
} else {
    toastLog("未找到录制文件,请检查路径");
}

5. 常见问题排查

  • 找不到录制按钮:请检查 Hamibot 是否为最新版本,旧版本可能入口不同。
  • 录制无反应:确认无障碍服务是否正常运行,尝试重启 Hamibot 服务。
  • 运行报错:确保录制文件路径正确,且脚本有读取存储权限。

录制功能适合固定流程的自动化,如果界面元素变化频繁,建议结合图像识别或控件查找编写脚本以提高稳定性。

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