回答
在 Hamibot 中获取屏幕坐标主要有三种方式:系统自带功能、App 内置调试工具以及脚本代码获取。以下是具体操作方法:
1. 开启系统“指针位置”(最直观)
这是安卓系统自带的功能,可以直接在屏幕上显示触摸点的实时坐标。
操作步骤:
- 进入手机「设置」→「关于手机」。
- 连续点击「版本号」7 次,开启开发者模式。
- 返回「设置」→「系统」→「开发者选项」。
- 找到「指针位置」或「显示触摸操作」并开启。
- 此时屏幕左上角会显示当前的 X 和 Y 坐标值。
2. 使用 Hamibot 设备调试工具(推荐)
Hamibot App 内部集成了调试功能,可以查看控件的具体位置和属性。
操作步骤:
- 打开 Hamibot App,点击右上角菜单或图标。
- 选择「设备调试」或「日志」页面。
- 点击界面上的任意元素,下方会显示该元素的详细信息,包括
bounds(边界框)。 - 你可以根据
bounds.left和bounds.top计算中心点坐标。
3. 脚本代码获取坐标
在脚本中,可以通过控件对象直接获取坐标信息,或者使用系统 API 获取屏幕尺寸。
代码示例:
// 文档地址 https://docs.hamibot.com/
function main() {
// 设置基准分辨率,确保坐标在不同设备上比例一致
setScreenMetrics(1080, 1920);
// 查找一个控件
var btn = text("确定").findOne();
if (btn) {
// 获取控件边界
var rect = btn.bounds();
// 计算中心点坐标
var centerX = Math.floor((rect.left + rect.right) / 2);
var centerY = Math.floor((rect.top + rect.bottom) / 2);
toast("目标坐标:" + centerX + "," + centerY);
// 点击该坐标
click(centerX, centerY);
} else {
toast("未找到控件");
}
}
main();
4. 注意事项
- 分辨率适配:不同手机屏幕分辨率不同,直接使用绝对坐标容易失效。务必使用
setScreenMetrics()统一基准分辨率,脚本会自动进行坐标放缩。 - 相对定位:建议以屏幕中心或某个固定 UI 元素为锚点,计算偏移量,而不是写死绝对坐标。
- 权限要求:使用上述方法需要授予 Hamibot「无障碍服务」和「截图」权限。
- 引擎兼容性:代码中未使用箭头函数和默认参数,符合 Rhino 1.7.15 引擎规范。
详细的技术文档和 API 接口说明,请访问:https://docs.hamibot.com/
ℹ️ 内容由 AI 生成,可能不准确,请注意核实