触摸精灵脚本编辑器电脑版
v1.4.0 官方pc版- 软件大小:12.11 MB
- 更新日期:2019-06-28 18:00
- 软件语言:简体中文
- 软件类别:编程工具
- 软件授权:免费版
- 软件官网:待审核
- 适用平台:WinXP, Win7, Win8, Win10, WinAll
- 软件厂商:
软件介绍 人气软件 下载地址
触摸精灵脚本编辑器是一款由触摸精灵官方发布的PC电脑软件,它是一款可以帮您自动化操作手机或平板设备的软件,它可以帮助您执行任何指定的动作,无论是在游戏中还是在日常工作中,都可以告别之前繁琐的手动操作,尽情享受自动化带来的乐趣;触摸精灵简单、易用,通过录制功能不需要任何编程基础就可以录制出功能强大的脚本,还可通过编程制作出功能更为复杂,使用更为灵活的脚本;触摸精灵脚本使用Lua语言进行编写,支持Lua 5.2.3版本的所有语法与基本函数,配合触摸精灵特有的函数,实现找图、找色、触摸等高级功能。强大又实用,需要的用户可以下载体验
软件功能
1、触摸动作
①手指按下
②手指移动
③手指抬起
2、按键动作
①按键按下
②按键抬起
3、取色函数
①获取16进制颜色
②获取RGB颜色
4、找色函数
①全屏找色
②全屏模糊找色
③区域找色
④区域模糊找色
5、屏幕操作
①获取屏幕分辨率
②获取屏幕色彩位数
③屏幕保持
④屏幕旋转
⑤全屏截图
⑥区域截图
软件特色
1、图像识别
①本地图像识别
②远程图像识别初始化
③基本远程图像识别
④高级远程图像识别
2、应用操作
①打开应用
②关闭应用
③应用是否运行
④应用内存读取
3、用户提示
①文字提示
②震动提示
③声音提示
4、其他函数
①输出日志
②毫秒延迟
③获取设备串号
④获取网络时间
⑤HTTP访问
⑥复制文字
⑦输入文字
安装步骤
1、浏览至此,需要的用户可以点击本网站提供的下载路径下载得到对应的程序安装包
2、通过解压功能将压缩包打开,找到主程序,双击主程序即可打开
使用说明
如何录制
点击底部导航栏切换到“列表”界面
单击左上角的“新建”按钮,在弹出的菜单中选择“录制”
在弹出的对话框中填写脚本名称,然后点击“确定”按钮
切换到手机的任意界面,按下音量键开始录制
做一些你想要录制的触摸动作
再次按下音量键停止录制
1.2 如何播放
点击底部导航栏切换到“列表”界面
单击想要播放的脚本
在弹出的对话框中设置播放参数, 然后选择“手动播放”或者“定时播放”
切换到手机的任意界面。如果选择的“手动播放”,那么需要手动按下音量键开始播放; 如果选择的“定时播放”,脚本会在设定的时间自动播放
脚本在播放完毕后会自动停止,或在播放过程中再次按下音量键停止播放
1.3 如何编辑
点击底部导航栏切换到“列表”界面。
单击想要编辑的脚本右侧的蓝色箭头”
在弹出的界面中直接编辑脚本文件
点击“保存”按钮保存脚本文件
1.4 如何注册
登录http://aisence.taobao.com,按照里面的购买流程注册
点击“触摸精灵”的“设置”中的“序列号激活”,输入淘宝获取到的序列号,点击“激活”按钮。
软件将自动下载注册文件到/var/touchelf/key,重新进入“注册状态”,显示已注册和“有效期”则成功
2 脚本语言
IOS版本触摸精灵的脚本存放目录为"/var/touchelf/scripts/"。
IOS触摸精灵的坐标体系,始终以HOME键在下(即竖屏)时,左上角为(0,0),而不管画面是否旋转。
触摸精灵使用Lua语言作为底层脚本语言,支持Lua 5.2版本的所有语法与基本库函数,并在Lua语言的基础上添加了一些扩展函数,用于发送触摸事件、找图、找色等高级功能的实现。
2.1 基本语法
用户可参考Lua的官方手册或者其他资料来学习以下基本语法:
注释
变量与类型
运算符
赋值
条件控制
循环控制
函数定义
库函数
等等
2.2 脚本UI界面
用户可以通过在脚本中定义一个全局变量UI来实现定义脚本的配置界面,该界面会在脚本运行前显示给用户,用于让用户设置一些脚本的参数, 这些参数的值会赋值给指定的变量,脚本运行时可以通过访问这些变量来获取用户的配置。下面是一个完整的例子:
UI = {
{ 'TextView{-请如实填写哦-}' },
{ 'InputBox{}', 'name', '姓名:' },
{ 'DropList{帅哥|美女}', 'sex', '性别:' },
{ 'InputBox{18}', 'age', '年龄:' },
{ 'DropList{是|否}', 'married', '婚否:' },
};
function main()
notifyMessage(string.format("姓名:%s\n性别:%s\n年龄:%s\n婚否:%s", name, sex, age, married));
end
上述脚本播放前会显示一个如下界面:
全局变量UI是一个Table类型的变量,其中包含若干个子Table,每一个子Table都是一个界面上的控件,控件按照顺序自上而下排列,目前支持3中类型的控件:
1. TextView (静态文本)
1.1 控件说明
该类型的控件只用来显示一行文字,不需要用户操作。
1.2 控件定义
{ 'TextView{显示的内容}' }
这个Table只有一个字符串成员,即'TextView{显示的内容}', 其中的TextView是指定此控件的类型为静态文本, {}中的内容即为该静态文本显示的内容。
2. InputBox (输入框)
2.1 控件说明
该类型的控件可以用于让用户输入一些内容,并可以指定一个变量名,脚本开始后通过该变量就可以访问到用户输入的内容。
2.2 控件定义
{ 'InputBox{默认值}', 'var', '注释' }
这个Table中有3个字符串成员:
* 'InputBox{默认值}', 其中的InputBox是指定此控件的类型为输入框,{}中的内容是该输入框中的默认值
* 'var', 定义一个变量的名字,脚本开始后可以通过访问这个变量来获取用户输入的内容
* '注释', 显示在输入框上方,用于说明该输入框的用途
2.3 使用提示
需要注意的是获取到的变量的值是默认是字符串类型,你可以使用tonumber()函数来转换成数字类型来使用。例如
var = tonumber(var);
3. DropList (下拉列表)
3.1 控件说明
该类型的控件可以用于让用户在指定的若干个值中选择其中一个,并可以指定一个变量名,脚本开始后通过该变量就可以访问到用户选择的内容。
3.2 控件定义
{ 'DropList{选项1|选项2|选项3|...}', 'var', '注释' }
这个Table中有3个字符串成员:
* 'DropList{选项1|选项2|选项3|...}', 其中的DropList是指定此控件的类型为下拉列表,{}中的内容是指定的若干个选项,每个选项间用|分隔
* 'var', 定义一个变量的名字,脚本开始后可以通过访问这个变量来获取用户选择的内容
* '注释', 显示在下拉列表上方,用于说明该下拉列表的用途
*** 说明 ***
全局代码块(不包含在任何函数内的代码块)会在脚本的main()函数之前被调用,所以可以在全局代码块中对UI变量进行动态的设置,UI变量是一个Table类型的变量,可以使用Lua的Table库函数操作, 下面是一个操作UI变量的例子:
file = io.open("/var/touchelf/conf.txt"); -- 打开配置文件
data = file:read("*a"); -- 读取全部内容
file:close(); -- 关闭文件
UI = {
{ 'InputBox{'.. data .. '}', 'demo', '演示:' },
}
function main()
notifyMessage(string.format("%s", demo));
end
getColorRGB()获取指定像素颜色的R、G、B三个值参数参数1 (数字) : X坐标参数2 (数字) : Y坐标返回值返回值1 (数字) : R返回值2 (数字) : G返回值3 (数字) : B示例r, g, b = getColorRGB(100, 100); -- 将坐标为(100,100)的点的颜色的R、G、B分别保存在变量r、g、b中
if r == 0x00 and b == 0x00 and g == 0xff then -- 如果该点颜色为0x0000ff(纯蓝色)
touchDown(0, 100, 100); -- 那么点击该坐标
touchUp(0);
end
findColor()全屏找色参数参数1 (数字) : 要找的颜色返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findColor(0x0000ff); -- 在全屏范围找到第一个颜色为0x0000ff的点,将其坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findColorFuzzy()全屏模糊找色参数参数1 (数字) : 要找的颜色参数2 (数字) : 精确度返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findColorFuzzy(0x0000ff, 90); -- 在全屏范围找到第一个颜色为0x0000ff的点,精确度为90%,将其坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findColorInRegion()区域找色参数参数1 (数字) : 要找的颜色参数2 (数字) : 区域左上角X坐标参数3 (数字) : 区域左上角Y坐标参数4 (数字) : 区域右下角X坐标参数5 (数字) : 区域右下角Y坐标返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findColorInRegion(0x0000ff, 100, 100, 200, 200); -- 在区域[(100,100)(200,200)]范围找到第一个颜色为0x0000ff的点,将其坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findColorInRegionFuzzy()区域模糊找色参数参数1 (数字) : 要找的颜色参数2 (数字) : 精确度参数3 (数字) : 区域左上角X坐标参数4 (数字) : 区域左上角Y坐标参数5 (数字) : 区域右下角X坐标参数6 (数字) : 区域右下角Y坐标返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findColorInRegionFuzzy(0x0000ff, 90, 100, 100, 200, 200); -- 在区域[(100,100)(200,200)]范围找到第一个颜色为0x0000ff的点,精确度为90%,将其坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findImage()全屏找图参数参数1 (字符串) : 要找的图片的路径,只支持BMP格式参数2 (数字, 可选) : 指定图片中透明颜色返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findImage("/var/touchelf/a.bmp"); -- 在全屏范围找到第一个路径为"/var/touchelf/a.bmp"的图片,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
x, y = findImage("/var/touchelf/a.bmp", 0x000000); -- 在全屏范围找到第一个路径为"/var/sdcar/a.bmp"的图片,忽略图片中颜色为0x000000(黑色)的点,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findImageFuzzy()全屏模糊找图参数参数1 (字符串) : 要找的图片的路径,只支持BMP格式参数2 (数字) : 精确度参数3 (数字, 可选) : 指定图片中透明颜色返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findImageFuzzy("/var/touchelf/a.bmp", 90); -- 在全屏范围找到第一个路径为"/var/sdcar/a.bmp"的图片,精确度为90,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
x, y = findImageFuzzy("/var/touchelf/a.bmp", 90, 0x000000); -- 在全屏范围找到第一个路径为"/var/sdcar/a.bmp"的图片,精确度为90,忽略图片中颜色为0x000000(黑色)的点,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findImageInRegion()区域找图参数参数1 (字符串) : 要找的图片的路径,只支持BMP格式参数2 (数字) : 区域左上角X坐标参数3 (数字) : 区域左上角Y坐标参数4 (数字) : 区域右下角X坐标参数5 (数字) : 区域右下角Y坐标参数6 (数字, 可选) : 指定图片中透明颜色返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findImageInRegion("/var/touchelf/a.bmp", 100, 100, 200, 200); -- 在区域[(100,100)(200,200)]范围找到第一个路径为"/var/sdcar/a.bmp"的图片,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
x, y = findImageInRegion("/var/touchelf/a.bmp", 100, 100, 200, 200, 0x000000); -- 在区域[(100,100)(200,200)]范围找到第一个路径为"/var/sdcar/a.bmp"的图片,忽略图片中颜色为0x000000(黑色)的点,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
findImageInRegionFuzzy()区域模糊找图参数参数1 (字符串) : 要找的图片的路径,只支持BMP格式参数2 (数字) : 精确度参数3 (数字) : 区域左上角X坐标参数4 (数字) : 区域左上角Y坐标参数5 (数字) : 区域右下角X坐标参数6 (数字) : 区域右下角Y坐标参数7 (数字, 可选) : 指定图片中透明颜色返回值返回值1 (数字) : X坐标,如果没找到返回-1返回值1 (数字) : Y坐标,如果没找到返回-1示例x, y = findImageInRegionFuzzy("/var/touchelf/a.bmp", 90, 100, 100, 200, 200); -- 在区域[(100,100)(200,200)]范围找到第一个路径为"/var/sdcar/a.bmp"的图片,精确度为90,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
x, y = findImageInRegionFuzzy("/var/touchelf/a.bmp", 90, 100, 100, 200, 200, 0x000000); -- 在区域[(100,100)(200,200)]范围找到第一个路径为"/var/sdcar/a.bmp"的图片,精确度为90,忽略图片中颜色为0x000000(黑色)的点,将其左上角坐标保存到变量x和y中
if x ~= -1 and y ~= -1 then -- 如果找到了
touchDown(0, x, y); -- 点击那个点
touchUp(0);
end
keepScreen()开启/关闭屏幕保持。当开启屏幕保持时,后续的找图、找色等函数不会重新获取屏幕图像,而是使用开启屏幕保持之前的屏幕图像;当关闭屏幕保持时,后续的找图、找色等函数会每次都重新获取屏幕图像。适当使用此函数可以优化脚本运行效率参数参数1 (布尔值) : 是否启用屏幕保持返回值无示例keepScreen(true); -- 开启屏幕保持
if getColor(100, 100) == 0x000000 or getColor(200, 200) == 0x000000 then -- 进行2次取色,由于启用了屏幕保持,这2次取色不会重新获取2次屏幕图像,这样可以提高性能
notifyMessage("yes"); -- 如果(100,100)和(200,200)坐标有一个颜色为黑色,输出"yes"
else -- 否则
notifyMessage("no"); -- 输出"no"
end
keepScreen(false); -- 关闭屏幕保持
rotateScreen()旋转屏幕的坐标体系, 后续的找图、找色、截图、触摸动作都会使用新的坐标体系。参数1 (数字) : 如下0: 保持原本的坐标体系。对于IOS设备来说,此时HOME键在下方时的屏幕左上角为原点。90: 坐标系统向右转90度。对于IOS设备来说,此时HOME键在右方时的屏幕左上角为原点-90: 坐标系统向左转90度。对于IOS设备来说,此时HOME键在左方时的屏幕左上角为原点180: 坐标系统倒立。对于IOS设备来说,此时HOME键在下方时的屏幕左上角为原点返回值无示例rotateScreen(90); -- 旋转坐标体系向右90度,大多数横屏游戏使用此坐标体系.
touchDown(0, 100, 100); -- 发送触摸动作,此时点击的点使用新的坐标体系.
touchUp(0);
snapshotScreen()全屏截图参数参数1 (字符串) : 保存截图的路径, 支持BMP格式和JPG格式,根据文件名后缀智能判断返回值无示例snapshotScreen("/mnt/sdcard/a.bmp"); -- 将全屏截图保存到路径为"/mnt/sdcard/a.bmp"的图片中,格式为BMP。
snapshotScreen("/mnt/sdcard/a.jpg"); -- 将全屏截图保存到路径为"/mnt/sdcard/a.jpg"的图片中,格式为JPG。
snapshotRegion()区域截图参数参数1 (字符串) : 保存截图的路径, 支持BMP格式和JPG格式,根据文件名后缀智能判断参数2 (数字) : 区域左上角X坐标参数3 (数字) : 区域左上角Y坐标参数4 (数字) : 区域右下角X坐标参数5 (数字) : 区域右下角Y坐标返回值无示例snapshotRegion("/mnt/sdcard/a.bmp", 100, 100, 200, 200); -- 将区域[(100,100)(200,200)]的截图保存到路径为/mnt/sdcard/a.bmp的图片中, 格式为BMP。
snapshotRegion("/mnt/sdcard/a.jpg", 100, 100, 200, 200); -- 将区域[(100,100)(200,200)]的截图保存到路径为/mnt/sdcard/a.jpg的图片中, 格式为JPG。
人气软件
-
redis desktop manager2020.1中文 32.52 MB
/简体中文 -
s7 200 smart编程软件 187 MB
/简体中文 -
GX Works 2(三菱PLC编程软件) 487 MB
/简体中文 -
CIMCO Edit V8中文 248 MB
/简体中文 -
JetBrains DataGrip 353 MB
/英文 -
Dev C++下载 (TDM-GCC) 83.52 MB
/简体中文 -
TouchWin编辑工具(信捷触摸屏编程软件) 55.69 MB
/简体中文 -
信捷PLC编程工具软件 14.4 MB
/简体中文 -
TLauncher(Minecraft游戏启动器) 16.95 MB
/英文 -
Ardublock中文版(Arduino图形化编程软件) 2.65 MB
/简体中文