基本功能及语法
脚本存放路径
苹果: /var/touchelf/scripts/
安卓: /mnt/sdcard/touchelf/scripts/
脚本格式
脚本分4种格式 lua e3 tep tepe
lua格式: 脚本源码
e3格式: 脚本源码加密后的格式
tep: 项目打包脚本,里面包含多个lua以及图片资源等文件
tepe: 加密后的项目打包脚本
项目脚本
基础项目包含一个主文件和两个文件夹
主文件名必须是 main.lua
lib文件夹内存放其他的lua文件.放在此文件夹内的lua文件在加密的时候会同时被加密.
res文件夹内存放图片等资源文件.
也可创建其他文件夹用于存放不同的文件,例如创建一个font文件夹用于存放字库.
由于项目脚本运行的时候会在临时目录运行,所以访问项目内文件夹需要使用 getWorkingDirectory()函数 获取临时目录
项目脚本找图使用如下写法:
function main()
wd = getWorkingDirectory()
x, y = findImage(wd.."/res/a.bmp");
if x ~= -1 and y ~= -1 then
touchDown(0, x, y);
touchUp(0);
end
end
项目脚本加载lib目录内模块写法:
main.lua:
a = require "a"
function main()
a.foo()
end
a.lua:
local M = {}
function M.foo()
notifyMessage("a from module")
end
return M
使用控制中心上传项目脚本
控制中心下载地址:http://ask.touchelf.net/ask/article/30.html
使用vscode上传项目脚本
上传脚本
1.使用vscode编辑完脚本后点击远程运行会自动上传脚本
2.使用vscode设备文件处的上传功能上传
3.使用控制中心的上传脚本功能上传
4.使用控制中心中的文件管理功能上传
录制
1.脚本列表界面点击左上角菜单
2.点击菜单中的 录制 按钮
3.在弹出的对话框中输入想要录制的脚本的名称, 然后点击“确定”按钮
5.阅读弹出的对话框中的说明, 然后切换到手机的任意界面, 按下音量键开始录制
6.做一些你想要录制的触摸动作,再次按下音量键停止录制
设置循环
1.点击脚本,弹出菜单中选择选定
2.设置循环次数以及循环的间隔时间 循环时间为毫秒 1秒 = 1000毫秒 点击保存配置,点击选定脚本
运行
1.选定脚本后可以点击音量键运行脚本,或者使用菜单中的运行来运行脚本
2.脚本在播放完毕后会自动停止, 或在播放过程中再次按下音量键停止播放
编辑
1.点击脚本,弹出菜单中选择编辑
2.编辑完成后点击编辑界面右上角的菜单保存
开机启动
1.点击脚本,弹出菜单中选择开机启动
2.打开设置页面,打开开机启动选项
脚本修改开机启动方法
通过修改配置文件修改开机启动,此方法修改完设置页面的开机启动功能无变化,但不影响功能正常使用
function main()
local file = File.Read("/var/touchelf/var/config.json")
local config = jsonDecode(file)
config.boot.enable = true --设置开机启动为true
config.boot.script = 'main.lua' --设置开机启动脚本为 main.lua
config = jsonEncode(config)
File.Write("/var/touchelf/var/config.json",config)
end
上面用到的file方法见:http://ask.touchelf.net/ask/article/19.html
通过API接口修改开机启动,此方法修改完设置页面的开机启动功能有变化
function httpPut(data)
local http = require "socket.http"
local ltn12 = require "ltn12"
local request_body = data -- 这里是PUT的数据
local response_body = {}
local res, code, response_headers = http.request{
url = "http://127.0.0.1:8000/api/config", -- 这里是你提交的域名
method = "PUT",
headers =
{
["Content-Type"] = "application/x-www-form-urlencoded";
["Content-Length"] = #request_body;
},
source = ltn12.source.string(request_body),
sink = ltn12.sink.table(response_body),
}
if type(response_body) == "table" then
return table.concat(response_body)
else
logDebug("Not a table:", type(response_body))
end
end
function main()
local res = httpGet("http://127.0.0.1:8000/api/config")
local config = jsonDecode(res)
config.boot.enable = true --设置开机启动为true
config.boot.script = 'main.lua' --设置开机启动脚本为 main.lua
config = jsonEncode(config)
httpPut(config)
end
加密
1.点击脚本,弹出菜单中选择加密
2.e3为lua脚本的加密脚本.tepe为项目脚本tep的加密脚本
注册
1.购买序列号
淘宝官方店:http://aisence.taobao.com
社区:http://ask.touchelf.net
去上述地址购买序列号
触摸精灵未注册也可以使用半个小时,请确定您的设备可以正常使用在购买.序列号一经售出概不退换
2.点击设置 -> 注册状态 -> 右上角菜单 -> 注册 输入购买的序列号 注册状态中显示到期时间则注册成功
社区购买序列号流程
1.注册并登陆社区.
2.充值余额
点击充值余额进行余额充值
3.兑换点数
充值完成后点击兑换点数
4.提取序列号
兑换完成后点击 触摸序列号 菜单,在提取序列号界面输入 提取数量 点击 提取 即可
5.订单列表
订单列表中显示的是每次提取序列号的订单
6.序列号列表
序列号列表中显示的是所有序列号的状态以及信息
解绑
1.访问官方网站 www.touchelf.com 点击右上角 激活 -> 查询&解绑
2.输入注册码及验证码
3.输入验证码点击解绑
4.社区购买序列号解绑方式
除上述去官网解绑方式外还可以在 序列号列表 中点击解绑按钮 解绑
注意:序列号绑定两个月以上才可以解绑一次.每个序列号解绑次数为5.超过解绑次数则无法解绑
基本语法
主入口为 main 函数 触摸执行时是从 main 函数开始运行
例如:执行一个提示
function main()
toast("test")
end
例如:执行一次点击
function main()
click(100,100)
end
function click(x,y)
touchDown(0,x,y)
mSleep(20)
touchUp(0)
end
其他lua语法用户可参考Lua的官方手册或者其他资料来学习以下基本语法:
- 注释
- 变量与类型
- 运算符
- 赋值
- 条件控制
- 循环控制
- 函数定义
- 库函数
- ......
Lua官方手册:http://www.lua.org/manual/5.2/
Lua教程: https://www.w3cschool.cn/lua/