autojs无疑是目前为止比较不错的app自动化工具,用过,也遇到过不少坑。最近在网上闲逛时偶然间发现了冰狐智能辅助这个平台,可以在不编程的情况下仅通过配置参数来实现app自动化,本人由之前的疑惑、怀疑,到试着做一下,再到后来逐渐爱上了冰狐智能辅助。下面我把自己的从autojs转到冰狐智能辅助的心里历程写出来,供大家在选择工具时参考。
由于我不是专业开发人员,了解一点编程知识但不熟练,所以之前每次遇到项目时我都出钱让别人帮忙写autojs来实现,但随之而来的就是一个巨大的坑,就是后期由于各种原因(比如项目变更、或者app的界面发生变化、或者操作流程有变)需要修改脚本时,我变的非常非常非常地被动。经常出现开发脚本的人漫天要价,一个很小的改动就要好几百(现在看来冰狐只需要修改几个参数就搞定,1分钟的事情),还一副爱搞不搞的表情,很是老火,但又不能拒绝,否则之前的脚本就白开发了(就算换个人开发脚本大概率也会遇到同样的问题)。
大概在今年年初左右在网上无意间发现了冰狐智能辅助,官方号称可以不写一行代码仅配置参数就可以搞定各种app的自动化,我刚开始抱着怀疑的态度(心想如果不用编程就能搞定,那程序员岂不都失业了么,吹牛也不能吹上天啊),后来想想还是试下吧,试下又不要钱,万一是真的呢,于是我花了2个小时把自动构建脚本的文档和相关视频例子仔细看了下,觉得还挺简单的,于是找个钉钉自动打卡的视频例子照着做了一次,顺利搞定,果然可以实现自动打卡,太神奇了,后面我就专心研究了几遍冰狐智能辅助,现在已经可以熟练的搞定任何app自动化了。
熟悉冰狐智能辅助后,我把之前的autojs项目全部用冰狐智能辅助的自动构建脚本实现了一遍,后续项目任何变动我再也不被动了,项目的整个开发成本比以前低了不知道多少倍。现在我基本上已经完全抛弃autojs了,现在冰狐智能辅助是我的新宠,哈哈哈!
下面用钉钉自动打卡作为例子,讲解下如何使用冰狐智能辅助:
了解人工钉钉打卡的过程,也即熟悉业务逻辑,建议选择钉钉v6.5.10版本(其他版本操作界面可能会稍有不同,所以模块参数有可能要根据实际情况修改)。
在网页端「移动端」/「自动构建脚本」中新建一个“自动构建”,根据上一步的业务逻辑选择合适的自动构建模块并配置参数。
在配置自动构建模块和参数的过程中,系统会自动生成json格式的元数据用于描述选择的模块和参数,使用这个元数据可以快速复制一份完全一样的“自动构建”。
- // 请新建一个自动构建,然后点击"元数据",将如下元数据拷贝进去然后保存,系统会自动生成一个完整的自动构建demo。
- {
- "type": "root",
- "children": [{
- "type": "declareVar",
- "var": [{
- "name": "temp",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "ret",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "view",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "viewContainer",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "tag",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "item",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "index",
- "type": "normal",
- "initType": "null",
- "initValue": "null"
- }, {
- "name": "data",
- "type": "normal",
- "initType": "string",
- "initValue": ""
- }, {
- "name": "text",
- "type": "normal",
- "initType": "string",
- "initValue": ""
- }]
- }, {
- "type": "main",
- "desc": "业务逻辑入口",
- "debug": false,
- "params": [],
- "children": [{
- "type": "launchApp",
- "desc": "启动APP",
- "debug": false,
- "packageName": "com.alibaba.android.rimet",
- "tag": "txt:工作台#",
- "false": {},
- "failed": "",
- "maxStep": 30,
- "children": [{
- "type": "clickAndEnter",
- "desc": "点击进入工作台",
- "class": 1,
- "debug": false,
- "clickTag": "txt:工作台#",
- "root": "",
- "clickWidgetIndex": 0,
- "family": [],
- "descendant": [],
- "checkTag": "txt:应用中心#",
- "mode": "2",
- "false": {},
- "failed": "",
- "duration": 500,
- "maxStep": "8",
- "beforeWait": 0,
- "afterWait": 0,
- "children": [{
- "type": "clickAndEnter",
- "desc": "点击进入考勤打卡页面",
- "class": 1,
- "debug": false,
- "clickTag": "txt:考勤打卡#",
- "root": "",
- "clickWidgetIndex": "0",
- "family": [],
- "descendant": [],
- "checkTag": "txt:统计#",
- "mode": "2",
- "failed": "",
- "duration": "500",
- "maxStep": "8",
- "beforeWait": "0",
- "afterWait": "0",
- "children": [{
- "type": "click",
- "desc": "点击打开",
- "class": 1,
- "debug": false,
- "tag": "txt:上班打卡|txt:下班打卡#",
- "root": "",
- "widgetIndex": "0",
- "family": [],
- "descendant": [],
- "mode": "3",
- "failed": "",
- "maxStep": "5",
- "longClick": false,
- "random": true,
- "duration": "5000",
- "beforeWait": "0",
- "afterWait": "1000"
- }],
- "false": {}
- }]
- }]
- }]
- }],
- "desc": "根模块",
- "debug": false
- }
1.在网页端「移动端」/「自动构建脚本」点击右边的“编译”按钮,将自动构建编译成与自动构建名称相同的js脚本。
2.在网页端「移动端」/「移动端脚本」点击右边的“发布”按钮发布脚本。
3.在网页端「移动端」/「移动端脚本」点击右边的“运行”按钮,并选择设备,然后执行。