@xxzhushou
2018-10-11T16:26:24.000000Z
字数 6529
阅读 56134
叉叉脚本
已发布上架的脚本,可以在叉叉助手iOS版、叉叉助手安卓版、IPA精灵、叉叉助手免ROOT版、叉叉助手官网脚本库中检索查询。
以叉叉助手为例,展示以下查找脚本的方法
每一次创建新的项目时,都手动将工具库复制到源码目录下是不是有点麻烦?
将构建好的工具库放置到预置工具库路径的目录中,就可以在每次创建工程的时候勾选载入了。
默认工具库的路径:文件→设置工作区路径
新建工程时,可以在工具库路径下的所有文件夹中选中任意文件夹(可多选),创建时该文件夹下的内容就会被复制到源码目录下。
例如:badboy文件夹内含有 bblibs文件夹、badboy.lua两个文件,那么这两个文件就会被复制到新工程的源码目录下,复制时不含外层的badboy文件夹。
开发途中想查找函数定义的位置不在当前的文件怎么办?
使用查找符号功能,快捷键Ctrl+B,就能快速查询到当前的变量都出现在哪个文件的哪一行。
取色时想要知道某个坐标的颜色,可以使用输入坐标来快速定位。
例如,想要获得100,100这个坐标的颜色值,那么首先在坐标处输入100,100点击回车,出现的RGB值就是这个点对应的颜色。
此时点击数字键取色,即可取色到右边的坐标颜色值里。
在抓色器中,按住鼠标从A点拖动到B点松开,就能选中3、4、5三个点哦,支持反选。
选中后如图:
在IDE安装目录下找到data.lua文件打开,在其中添加内容可以增加自定义生成代码的格式
data.lua文件
在datacolorfg中自己添加格式为:
{
title = "",
fScript = function(poslist,area, degree)
--左窗口的代码输出格式
end,
sScript = function (poslist,area, degree)
--右窗口的代码输出格式
end,
}
参数:
--poslist是一个含有勾选的取色的坐标值和颜色值的table
poslist = {
{x=x1, y=y1, color=0x111111},
{x=x2, y=y2, color=0x111111}....
}
--area代表生成函数的范围,分别为坐上和右下两点的坐标值
area = {
{x=lefttop_x, y=lefttop_y} ,
{x=rightbottom_x, y=rightbottom_y}
}
--degree代表生成函数时指定的相似度
degree = xxx
示例:一个简单的自定义格式
{
title = "My color code",
fScript = function(poslist,area, degree)
--输出一个单点找色函数
return string.format("x, y = findColorInRegionFuzzy(0x%06x, %d, %d, %d, %d, %d)",
poslist[1].color, --勾选的点中第一个点的颜色值
degree,
area[1].x,
area[1].y,
area[2].x,
area[2].y)
end,
sScript = function (poslist,area, degree)
return string.format("x, y = findMultiColorInRegionFuzzy(%s, %d, %d, %d, %d, %d)",
--输出一个多点找色函数
make_FMC(poslist), --用于输出所选的点之间的相对坐标
degree,
area[1].x,
area[1].y,
area[2].x,
area[2].y)
end
},
IDE 1.0.9.4以上版本支持不需要运行脚本直接查找多点找色的结果了!开不开心?惊不惊喜?
对于会变化的图片,可以采用多次截图在取色器工具中直接检验一组取色点是否通用。
使用方法:
1. 在图片上需要找的位置附近取几个点
2. 用A,S快捷键划定寻找范围
3. 确认多点找色的配置坐标颜色、相似度、查找范围、查找方向
4. 点击查找,找到的坐标结果会显示在小窗口内,点击其中一个点,图钉会将该点在图上标出。
5. 高级区域多点找色:勾选了高级区域多点找色选项的情况下,会返回最多99个结果,其中和取色第一个点坐标一致的结果,左侧有三角形标识。
IDE 1.0.9.6以上版本支持本地代码测试缩放后多点找色的结果了!6不6?6不6?6不6?
1. 取好颜色,生成测试代码,或者直接把代码写入测试代码区内,只要符合格式的都可以,具体参考预置的生成模板
2. 在需要测试的找色代码前面加入指定开发分辨率和测试图分辨率的代码
setScreenScale(720, 1280); --开发分辨率
setScreen(1440, 2560) --测试图分辨率
3. 点击测试,结果框会显示找到的坐标。
提示:用户提供的截图可以直接导入取色器进行测试。
一边写UI界面一边看效果,但是要运行脚本才能看到的话太麻烦了,怎么办?“UI预览”功能帮你忙。
选中一个json文件,点击“UI预览”,设备上马上就出现文件对应的UI界面啦。
预览例子如图:
default模式下的UI控件默认根据UI界面的宽度自适应,如果需要根据自己的需求控制控件的宽度,有以下两种办法;如果需要控制控件的高度,请使用第二种方法
{
"height" : 300,
"width" : 700,
"id" : "group1",
"type" : "LinearLayout",
"valign" : "top",
"views" : [
{
"color" : "100,100,100",
"size" : 30,
"text" : "选择",
"type" : "Label",
"width" : 100
},
{
"id" : "checkboxgroup2",
"list" : "选项1,选项2,选项3",
"select" : "2@3@",
"type" : "CheckBoxGroup",
"width" : 180
},
{
"id" : "4",
"list" : "选项1,选项2,选项3,选项4,选项5",
"select" : "1",
"size" : 20,
"type" : "ComboBox",
"width" : 250
}
]
}
预览:
2. 使用custom模式构建UI界面,那么每一个控件的位置和宽高都是可控的,以rect属性控制。("rect":"x,y,width,height")
{
"id" : "RadioGroup1",
"list" : "选项1,选项2,选项3,选项4,选项5,选项6,选项7",
"select" : "0",
"size" : "30",
"type" : "RadioGroup",
"orientation" : "vertical",
"rect" : "0,100,300,550"
},
{
"align" : "left",
"color" : "0,100,0",
"id" : "Edit1",
"kbtype" : "number",
"prompt" : "这是提示文本",
"size" : "25",
"text" : "这是预输入文本",
"type" : "Edit",
"rect" : "200,100,500,150"
}
预览:
果盘模拟器的使用方法和真机一致,直接输入开发助手上显示的IP即可。
其他模拟器按照以下方法连接。
cmd
打开命令行; 提示 connected to ip:port即连接成功,失败请参考下面模拟器对应的ip和端口重试。
adb -s <ip:port> forward tcp:12121 tcp:12121
按回车 adb devices
确认 模拟器 | connect ip及端口 |
---|---|
果盘 | 无需adb操作,与真机使用一致 |
海马玩 | 192.168.56.101(无需端口) |
逍遥 | 127.0.0.1:21503 |
夜神 | 127.0.0.1:62001 |
网易mumu | 127.0.0.1:7555(mac上端口为5555) |
特别注意:mac的连接方法,打开“终端”输入cd <adb所在的文件夹路径>
切换到对应的目录,执行上述步骤2~5即可。
--先去获取一下配置好的公告内容,key是gonggao
content, err = getCloudContent("gonggao", "此处十六位调试口令", "没有获取到公告")
-- content:公告服务表单中的value值
-- err:获取公告服务时的错误码,0为正常获取、1为网络错误、999为未知错误
-- getCloutContent的三个参数:第一个为key,用于获取对应的value值;第二个为调试口令;第三个为没有正确获取到value时的默认返回值,非必填项。
--根据返回的结果用dialog提示获取的内容
if err == 0 then
dialog(content)
elseif err == 1 then
dialog("网络错误,请检查网络设置")
elseif err == 999 then
dialog("未知错误,请联系作者QQ:123456789")
end
点击“字库下载”进入字库下载菜单
下载需要用到的字库,红框部分是字库的语言种类,用于指定API中的lang(语言)
为了提高识别的效率,加载OCR字库和识别文本是分开进行的,只需要载入一次字库,就可以在整个脚本内任意位置对文字进行识别。
createOCR 负责 载入高级文字识别字库(集成tesserOCR) API说明:戳这里createOCR
ocr:getText 负责高级文字识别 API说明:戳这里ocr:getText
戳这里【如何使用Tesseract-OCR(v3.02.02)训练字库】
叉叉助手报错如图示的情况,是由于将未加密的开发包导入了叉叉助手本地脚本中。
解决方法:
1.使用开发助手进行开发,登录下载地址:http://dev.xxzhushou.cn/
2.使用开发者平台的“闭源分享”功能加密脚本再导入叉叉助手的本地脚本中使用。
https://sourceforge.net/projects/tesseract-ocr-alt/files/
想把写好的脚本分享给朋友,又不希望暴露源码,可以使用开发者平台的闭源分享功能进行加密。
开发者平台:http://dev.xxzhushou.cn
比例 | 分辨率 | 设备型号 |
---|---|---|
2:3 | 320*480 | iPhone3GS、iPod touch/2G/3G |
640*960 | iPhone4/4S、iPod touch 4G | |
9:16 | 640*1136 | iPhone5/5c/5s/SE、iPod touch 5G/6G |
640*1136 | 6/6s/7机型放大模式 | |
750*1334 | iPhone6/6s/7 | |
1125*2001 | plus机型放大模式 | |
1242*2208 | iPhone6 Plus/6s Plus/7 Plus | |
3:4 | 768*1024 | iPad 1/2/mini |
1536*2048 | iPad 3/4/mini2/mini3/mini4/Air/Air2、9.7-inch iPad Pro | |
2048*2732 | 12.9-inch iPad Pro | |
其他 | 1125*2436 | iPhone X/XS |
828*1792 | iPhone XR | |
1242*2688 | iPhone XS Max |
比例 | 分辨率 |
---|---|
9:16 | 480*854、540*960、720*1280、1080*1920、1440*2560、640*1136、750*1334 |
10:16 | 800*1280、1200*1920、1600*2560 |
3:5 | 480*800、768*1280、1080*1800、1152*1920、1536*2560 |
3:4 | 768*1024、1536*2048 |