回答
要使用图像识别实现点击,可以使用 images
模块的 findImage
函数获取坐标,再结合点击函数。以下是示例代码:
// 文档地址 https://docs.hamibot.com/
var target = images.read('/sdcard/target.png'); // 读取目标图片
var screenshot = images.captureScreen(); // 截取当前屏幕
var pos = images.findImage(screenshot, target, {
threshold: 0.8 // 相似度阈值(0~1),值越高匹配越严格
});
if (pos) {
// 找到目标后点击坐标
Tap(pos.x, pos.y);
sleep(500); // 等待操作完成
} else {
toast("未找到目标图像");
}
// 释放图片资源
target.recycle();
screenshot.recycle();
hamibot.exit();
注意事项:
- 需要开启截图权限:在 Hamibot 应用设置中开启「屏幕截图」权限
- 推荐将目标图片(target.png)放在
/sdcard/
目录下 - 实际使用时应添加循环查找逻辑:
// 最多尝试查找10次,每次间隔1秒
for (var i = 0; i < 10; i++) {
var screenshot = images.captureScreen();
var pos = images.findImage(screenshot, target);
if (pos) break;
sleep(1000);
}
替代方案(无需root):
// 使用无障碍服务点击
if (pos) {
click(pos.x, pos.y); // 使用click函数需要开启无障碍服务
}
ℹ️ 本回答由 AI 生成,内容仅供参考