[关闭]
@miniknife 2019-05-26T14:58:38.000000Z 字数 6961 阅读 182646

触动精灵脚本开发新手指南

已不更新,最新请查看:http://www.touchsprite.com/docs/4945
开发手册 开发工具 开发教程 触动精灵 触动小精灵


Windows 平台按 Ctrl + F 打开快捷搜索

Mac 平台按 command + F 打开快捷搜索

※右侧文本列表可以找到全部手册


目录

前言

  • 由于触动精灵在线文档数量较多,很多人不知道如何查询,现建立此文档做为索引,其中会补充一些软件使用的常用信息。
  • 触动精灵旗下目前有四款软件:触动精灵(iOS/Android)、小精灵(iOS/Android)、企业版(iOS/Android)。
    • 触动精灵适合开发者和有中控开发能力的工作室使用
    • 小精灵适合有图标和包名自定义需求的开发者和工作室使用
    • 企业版适合有批量控制设备需求的工作室使用

触动产品功能对比

产品名称 自定义图标 录制 调试 运行源码 授权 批量控制 支持平台 开发者平台
触动精灵iOS × iOS:36元/台/年,Android:免费 购买API自行开发 iOS/Android http://dev.touchsprite.com/site/index
触动小精灵 × × × 5.5 元/台/月 购买API自行开发 iOS/Android http://app.touchsprite.com/
触动企业版 × × × iOS:46元/台/年,Android:测试期 0.1 元/台/年 免费 iOS/Android http://ent.touchsprite.com/

安卓小精灵提供免费版

如何查看更多文档

在文档右侧栏顶部点击文档分类菜单栏按钮,即可查看触动精灵所有在线文档。
image_1bj4nstj2ja41lphi4v14qo10mi9.png-78.8kB

新手必看

学习流程

初学者学习触动精灵脚本开发,应大致遵循以下流程:

  1. 熟悉并掌握 Lua 基础语法和词汇:五毛的 Lua 基础教程
  2. 触动精灵和开发工具的使用:抓色技巧、常见问题的解决办法等
  3. 浏览并熟悉触动精灵开发手册,大致掌握函数名称和功能
  4. 尝试编写简单的找色点击脚本,熟悉 Lua 语言逻辑
  5. 浏览并熟悉触动精灵函数扩展库手册,尝试使用封装函数和逻辑判断编写脚本
  6. 注册开发者平台账号,将脚本上传加密分享给其他人

答疑解惑

下面列出一些初学者经常问的问题
1. 没有任何编程基础能学会写脚本吗?可以。触动开发者中有中学生也有程序员,很多人的本职工作都和编程无关,最重要的是兴趣和自学能力。
2. 我有 8 年编程经验,还需要看 Lua 基础吗?需要。Lua 语言有一些特别的地方和其他语言不一样,比如 function 必须放在上面下面才可以引用,0 不是 nil 等等,磨刀不误砍柴工,少走弯路还是很有必要看基础的。
3. 开发手册的正确用法:记住都有什么功能,需要用的时候打开手册查看用法和注意事项,用法跟字典差不多,并不需要死记硬背记住所有函数。
4. 找色好用还是找图好用?关于这一点请看文档
5. 只写一个分辨率的脚本能自动适配所有分辨率吗?不能。虽然触动提供了缩放函数,但是并不适用于多点找色,最实际的办法还是不同的分辨率分别截图取色。
6. 学脚本有必要看别人写的源码吗?掌握一种适合自己的编写代码思路很重要,能大大提高效率,节省维护成本。触动提供了一些源码供大家参考,但前提是掌握了一定的 Lua 基础,否则再多的源码看不懂也是白搭。
7. 包含多个文件的脚本如何打包上传到开发者平台?请查看这个文档

学习前的准备

越狱及 root 常识

  • 在学习脚本开发之前,首先要具备一些关于 iOS 越狱和安卓 root 的知识,以及触动精灵的常用信息
  • 文档链接:https://www.zybuluo.com/lisaisacat/note/324664
  • 看了上面的文档,你可以具备以下知识:
    • 什么样的手机适合用来做脚本开发
    • 拿到一台越狱手机之后应该做什么才能避免白苹果和报错
    • Cydia 不见了或者已安装界面空白该怎么办
    • 为什么安装插件总是报错呢

Lua 基础简明教程

  • 首先你需要了解 Lua 这门语言的一些基础知识,什么是循环,什么是函数,布尔型和数值型分别是什么意思,才有可能看得懂下面的教程和手册。
  • 文档地址:https://www.zybuluo.com/lisaisacat/note/636399

脚本开发工具

在具备了一定的 Lua 语言基础之后,接下来需要熟悉触动精灵和开发工具的安装使用。
在使用过程中遇到问题,请先查阅手册自行寻找答案,学习语言最重要的一点就是自主学习钻研的能力,遇到问题不搜索直接问别人是不可取的。

IDE 脚本编辑器

下载地址:http://www.touchsprite.com/tools
使用教程:https://www.zybuluo.com/miniknife/note/123055
视频教程:https://www.zybuluo.com/lisaisacat/note/324664#编辑器与抓色器的使用

脚本编辑器是最常用的工具之一,官方提供的编辑器能够极大的提高编程效率。
支持函数自动补全、函数提示、关键字高亮、文件传送、远程运行、自动缩进等常用功能,已内置所有至最新 版本触动精灵扩展函数,推荐使用。

抓色器

下载地址:http://www.touchsprite.com/tools
使用教程:https://www.zybuluo.com/miniknife/note/629913
抓色技巧:https://www.zybuluo.com/lisaisacat/note/508345
使用教程:https://www.zybuluo.com/lisaisacat/note/324664#编辑器与抓色器的使用

抓色器,故名思议,就是远程连接设备截取屏幕,在电脑上获取图片坐标和颜色信息的工具,甚至能够生成一些常用的代码格式,极大地提高编写脚本的效率。

字库工具

使用教程:https://www.zybuluo.com/miniknife/note/629179

触动精灵专用字库工具,解决大漠工具取字高度只有 11 行识别不准确的问题。

新手入门

脚本开发取色技巧

  • 新手在学习使用触动精灵开发脚本的时候,总会进入一些误区,或者会有一些迷惑的点,觉得无从下手,本文总结了一些自己在学习过程中遇到的问题和经验技巧,欢迎大家一起交流分享。
  • 文档链接:https://zybuluo.com/lisaisacat/note/508345
  • 看了上面的文档,你可以具备以下知识:
    • 透明背景图、动图、带动画的界面应该怎么取色
    • 找色和找图哪个更好用
    • 函数封装是什么
    • 脚本报错了怎么办

小白学触动零基础视频教程

  • 如果你没有任何编程基础,可以先看一下零基础教学视频:https://www.zybuluo.com/lisaisacat/note/585252
  • 看了上面的文档,你可以具备以下知识:
    • deb 插件安装方法
    • 平刷插件 Cydia Eraser
    • SSH 命令工具 putty
    • 触动精灵的安装使用及常识
    • 抓色器和编辑器的使用及常识
    • 同样的脚本为什么有的手机运行异常
    • showUI 返回值的调用
    • showUI 应该怎么写才简洁好用
    • 大漠字库工具的用法

函数扩展库

下载地址及使用说明:https://www.zybuluo.com/miniknife/note/293935

为了进一步降低脚本开发者门槛,触动精灵提供了丰富的扩展库,包含一系列实用函数和实例代码供开发者使用。
强烈建议新手开发者使用函数扩展库,能够极大的提高脚本开发效率。
本接口适用于触动精灵/小精灵 iOS&Android 双平台,使用此接口的小精灵在生成时必须勾选 Remote API 类型。

触动精灵教学课程

  • 文档地址:https://www.zybuluo.com/miniknife/note/307651
  • 本教程适合入门新手学习,所有视频教学课程由 五毛君 和 菲佣 编写及制作,在此感谢 五毛君 和 菲佣 为触动精灵及广大开发者做出的贡献。
  • 建议大家先学习Lua语言基础教程,再配合手册详解视频学习开发手册,否则在看手册的时候会有很多不能理解的地方哦~
  • 如发现教程中的链接失效,请在教学群联系客服更新。

实例代码

文档地址:https://www.zybuluo.com/miniknife/note/323513

源码分享

包含多分辨率适配、刷开局号、部分论坛用户分享的游戏源码等,链接:https://pan.baidu.com/s/1o92jdd4 密码:zpw0
QQ图片20170221120501.png-55.9kB

远程接口 TS Remote API 开发手册

手册地址:https://www.zybuluo.com/miniknife/note/129616

触动精灵为高级开发者提供部分开放 API 接口,使用此接口可为触动精灵开发周边扩展工具,实现诸如:远程启动脚本、远程停止脚本、获取脚本运行状态、发送文件等功能,接口调用需验证开发者身份,请注册登录触动精灵开发者平台申请。

触动精灵 - 脚本开发专属客户端

触动精灵是开发者常用的开发工具,是所有产品中唯一可以连接 IDE 进行源码调试的软件。

开发手册和开发者平台

开发者平台:http://dev.touchsprite.com/
开发者平台使用教程:https://www.zybuluo.com/miniknife/note/434382
开发手册:https://www.zybuluo.com/miniknife/note/212706
脚本开发群:309753720
教学群:305168851
iOS 反馈群:250114166
安卓反馈群: 457624010
问题反馈请小窗测试:2885842939

注意事项

  • 触动精灵的开发函数除特别说明外,全部通用于触动精灵、小精灵和企业版,也就是说同样一个脚本文件可以上传到三个平台无需修改,小精灵平台需要根据脚本功能选择正确的类型)。
  • 有些函数不支持低版本触动精灵,请仔细阅读函数说明并尽量保持触动精灵客户端为最新版。
  • 测试版为不稳定版本,为避免不必要的麻烦,请勿大规模安装。
  • 测试版和正式版的 Bundle ID 不同,不能跨源覆盖安装或直接升级,请卸载之后再安装另一个源的版本。
  • 反馈问题请尽量提供报错截图、客户端版本、设备系统版本和运行环境,以便测试人员协助技术更快的定位问题,找到解决办法。

触动精灵 iOS

支持 iOS 6.0 - 11.0 越狱系统

使用教程:https://www.zybuluo.com/miniknife/note/307627
官方源地址:http://apt.touchsprite.com
测试源地址:http://apt-test.touchsprite.com
脚本存放路径:/var/mobile/Media/TouchSprite/lua
默认资源路径:/var/mobile/Media/TouchSprite/res
脚本日志路径:/var/mobile/Media/TouchSprite/log
配置文件路径:/var/mobile/Media/TouchSprite/config

iOS 11 系统的设备,原 TouchSprite 文件夹下新增 plugin_ios11 快捷方式,连接到 usr/bin/tsplugin
如果系统是 iOS 11 则 tsp 自带 so 文件释放到该路径但 lua 文件释放路径保持不变
如果开发者想要手动导入 so 文件,也需要放到 usr/bin/tsplugin 目录下

触动精灵 Android

支持安卓 4.4 - 8.0 root 系统 下载地址:http://www.touchsprite.com/touchsprite
*低于 4.3 的系统请安装 旧版 1.3.0

  • 使用教程:https://www.zybuluo.com/miniknife/note/443534
  • 脚本存放路径:/mnt/sdcard/TouchSprite/lua
  • 默认资源路径:/mnt/sdcard/TouchSprite/res
  • 脚本日志路径:/mnt/sdcard/TouchSprite/log
  • 配置文件路径:/mnt/sdcard/TouchSprite/config

已兼容的模拟器

雷电模拟器、夜神模拟器、猩猩模拟器、海马玩模拟器、逍遥模拟器、雷电模拟器、51模拟器

  • 从系统兼容和资源占用角度考虑,推荐使用雷电模拟器、夜神模拟器。
  • 模拟器使用手册:https://www.zybuluo.com/miniknife/note/443336
    • 包含模拟器如何导入脚本文件、连接 IDE 和抓色器的方法。

开发者平台使用教程

小精灵 - 图标定制版触动精灵

触动小精灵是触动精灵提供的在线脚本加密打包服务,开发者将脚本上传到开发者平台,自定义图标和启动图像,并自动生成 iOS 或 Android 应用安装包(deb/apk 格式),同时小精灵提供了配套的授权服务和脚本更新服务,使脚本分发授权更加方便快捷。

开发者平台使用教程

手册地址:https://www.zybuluo.com/miniknife/note/388129

企业版 - 工作室专用

触动精灵企业版以触动精灵为核心,在触动精灵已有功能基础上增加了中控端以解决企业用户批量操作,集中化控制等业务需求。

使用教程

文档地址:https://www.zybuluo.com/miniknife/note/288009

脚本开发手册

文档地址:https://www.zybuluo.com/miniknife/note/505954

附录

已知与触动精灵/小精灵/企业版 iOS 冲突的插件列表

如果您安装了以下插件导致服务使用异常,请在Cydia 中卸载该插件后重新安装客户端。

StatusHUD2 插件

会导致脚本showUI无法弹。

FakeGPS Pro

会导致点击失效或服务无法启动

CCSettings

会导致脚本showUI无法弹出

协奏助手

会导致点击失效

按键精灵 iOS

会导致UI弹出后点击【取消】【确定】无反应

xxplugin - coc/cok等

会导致点击失效或服务无法启动

XY苹果助手

会导致点击失效或服务无法启动

Lua math 库

函数名 描述 示例 结果
pi 圆周率 math.pi 3.1415926535898
abs 取绝对值 math.abs(-2012) 2012
ceil 向上取整 math.ceil(9.1) 10
floor 向下取整 math.floor(9.9) 9
max 取参数最大值 math.max(2,4,6,8) 8
min 取参数最小值 math.max(2,4,6,8) 2
pow 计算x的y次幂 math.pow(2,16) 65536
sqrt 开平方 math.sqrt(65536) 256
modf 取整数和小数部分 math.modf(20.12) 20 0.12
randomseed 设随机数种子 math.randomseed(os.time())
random 取随机数 math.random(5,90) 5 ~ 90
rad 角度转弧度 math.rad(180) 3.1415926535898
deg 弧度转角度 math.deg(math.pi) 180
exp e的x次方 math.exp(4) 54.598150033144
log 计算x的自然对数 math.log(54.598150033144) 4
log10 计算10为底,x的对数 math.log10(1000) 3
frexp 将参数拆成 x * (2 ^ y) 的形式 math.frexp(160) 0.625 8
ldexp 计算x * (2 ^ y) math.ldexp(0.625,8) 160
sin 正弦 math.sin(math.rad(30)) 0.5
cos 余弦 math.cos(math.rad(60)) 0.5
tan 正切 math.tan(math.rad(45)) 1
asin 反正弦 math.deg(math.asin(0.5)) 30
acos 反余弦 math.deg(math.acos(0.5)) 60
atan 反正切 math.deg(math.atan(1)) 45
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注