跳转至

基础

官网


用法

// 开启无障碍支持
auto();

// 打开一个App 名称
launchApp("App名称");

// 打开一个App 包名
launch("xxx.xxx.xxx");

模拟

// 要点击的文本
click('文本');

// 尝试点击按钮 直到成功
while(!click("文本"));

// 点击的位置
click(left, top, bottom, right);

// 长按的文本
longClick("文本");

// 上滑 左滑 
scrollUp()

// 下滑 右滑
scrollDown()

// 输入框设置文本
setText("文本");

// 输入文本内容
input("文本");

获取控件

// 寻找一个控件 如果没有则返回 null
var 名称 = id("组件ID").findOne();
// 寻找一个控件 在给定的时间内
var w = id("action_log").findOne(6000);
// 寻找一个控件
var 名称 = id("组件ID").findOnce();
// 寻找一个控件 获取第2+1个控件
var 名称 = id("组件ID").findOnce(2);
// 寻找所有符合条件的控件
var 名称 = id("组件ID").find();
// 等待符合条件的控件出现
var 名称 = id("组件ID").waitFor();

id("组件ID")
desc("描述");
text("文本");
className("类");

// 多个条件
id("recent_chat_list").className("AbsListView").findOne()

// 文本模糊匹配
textContains("文本");

// 正则表达式匹配文本
textMatches("表达式");

// 描述模糊匹配
descContains("描述")

// ID模糊匹配
idContains("ID")

// 获取可滑动控件
scrollable()

// 获取可编辑控件
editable()

对获取到的控件的操作

// 点击
.click()

// 长按
.longClick()

// 设置文本
.setText()

// 滑动
.scrollForward()

// 滑动
.scrollBackward()

// 是否 控件存在
.exits()

// 等待控件出现
.waitFor()

// 拷贝 文本库内容
.copy();

// 输入框复制操作
.paste();

语法

// 循环
while (true) {

}

// 判断
if (sss) {

} else {

}

函数

// 滑动
swipe(500, 1000, 500, 300, 500);

// 睡眠
sleep(1000);

// 气泡显示
toast("文本内容");

// 记录日志
log("内容")

// 输出气泡 并 记录日志
toastLog("内容");

// 设置剪切板
setClip("剪贴板文本");

// 获取剪切板内容
getClip();

// 立即停止脚本运行
exit();

// 随机数
random(1, 10)

// 随机数 0~1
random()

坐标操作

//获取这个控件
var widget = id("xxx").findOne();
//获取其中心位置并点击
click(widget.bounds().centerX(), widget.bounds().centerY());
// 设置自动适应分辨率
setScreenMetrics(1080, 1920);

模拟事件

// 点击
click(800, 200);

// 长按
longClick(300, 500);

// 长按 设置时长
press(300, 500, 1000)

// 滑动
swipe(x起始坐标, y起始坐标, x结束坐标, y结束坐标, 时长)

// 手势
gesture(1000, [0, 0], [500, 500], [500, 1000])

模拟按键

// 返回键
back()

// Home键
home()

// 模拟电源键
lockScreen()