快速上手
# 快速入门AutoApp
前言:对于有脚本编程经验的人,本节重点介绍下开发者比较关心的一些核心功能。
# AutoApp使用的脚本语言:
AT采用JS语言作为主要开发语言
# AutoAPP的开发方式
AutoAPP需要连接pc进行开发,PC版本开发工具AiWork,是一个专门为自动化研发的集中开发环境,其高效便利的开发方式可以让你,非常简单的生成代码。
首先我们演示下AiWork如何用自动生成找图代码
# 如何实现查找节点
AiWork提供了一个很方便的元素搜索器,只需要在需要定位的位置,右键审查元素即可打开,并且自动推荐搜索条件,
通过设置搜索条件自动生成代码
复制var nodes = auto.nodeSearch(3000).text("Facebook").className("android.widget.TextView")
var node=nodes.getNode(0);
node.click();
首先我们创建一个节点搜索器auto.nodeSearch(3000)并设置超时时间为3秒,然后查询text属性为”Facebook”,类名为”android.widget.TextView”的所有节点,存入一个集合对象nodes中,这里nodes不是一个数组,他是一个集合管理器,
然后通过nodes.getNode(0)取出第一个节点并存入node变量中。然后对node进行点击操作。
# 坐标点击屏幕
复制//↓坐标点击---------------------------
auto.clickPoint(120,355)
sleep.waitString(字符='',超时毫秒=1000)
//↑----------------------------------
auto.clickPoint为点击指定坐标位置,点击后如果需要等待可加入sleep.waitString 等待某个文字出现。
# Home按键
复制auto.home();
# Back返回
复制auto.back()
# 滑动
复制auto.swip(x1=300,y1=525,x2=300,y2=10)
从起点 300,525 坐标 滑动到终点 300,10坐标
# 截屏
复制var img=screen.screenShot(288,512,100);
截屏后自动把图片压缩成288,512
复制img.recycle();
使用完图片记得释放
# 区域截图
复制var img=screen.screenShotFull();
var cutimg=img.cutImage(0,0,100,100)
printl(cutimg);
img.recycle();
先全屏截图然后在裁剪坐标为0,0 100,100的区域存入变量cutimg中,之后打印查看图片并回收
# 找图
复制var img =screen.screenShot(288,512,100);
var base64='iVBORw0KGgoAAAANSUhEUgAAACIAAAAdCAIAAA'
var p=img.findImage(base64,weakThreshold=0.7,threshold=0.9,百分比区域=[0,0,1,1],-1);
if(p==null){
printl('未找到');
}else{
printl('找到'+p);
}
首先截屏,然后把要找的图片放入base64字符串中,之后通过找图函数findImage找图结果存入变量p中
# 单点找色
复制var img =screen.screenShot(288,512,100);
var p=img.findColor(rgb=[244,197,31],误差=1,百分比区域=[0,0,1,1])
printl(p);
if(p==null){
printl('未找到');
}else{
printl(`找到:${p.x()},${p.y()}`);
}
首先截屏,然后从图像中寻找指定rgb颜色的坐标,最后输出坐标信息
# OCR文字识别
复制var img=screen.screenShotFull();
var ocrRes=img.MLKitOcr('zh');
var dect= ocrRes.findIncludeText('微信');
if(dect != null){
printl('找到')
detect.click();
}else{
printl('未找到')
}
首先全尺寸截图,然后进行ocr识别,识别结果是一个ocrResult对象,他提供了一个查询文字坐标的功能,
查询后存入对象dect中,我们可以查看dect的结果也可以只是对他进行点击