所需方法
- has():通过选择器判断元素是否存在
- getNodeInfo():获取节点信息集合
- random():取得某个范围的随机值
- click():点击节点,节点区域随机点击
实现代码
以抖音13.6.0版本为例
首先通过节点抓取工具,获取表情图片的id为“bfc”
然后遍历表情组件,再随机点击一个
需要注意的是,有的会话页是没有这个推荐表情的,所以在代码中需要做组件是否存在的判断
// 定义组件选择器
let selectors = id("com.ss.android.ugc.aweme:id/bfc").clickable(true);
// 判断组件是否存在
if (has(selectors)) {
// 遍历组件
var result = getNodeInfo(selectors, 1000);
if (result.length > 0) {
// 取随机值
let num = random(0, result.length);
// 随机点击一个表情
if (result[num].click()) {
logd('已随机发送第 ' + (num + 1) + '个表情')
}
}
} else {
loge('未找到随机表情');
}