功能看截图不多说多了你们懂。
这个App重点是签到和读小说,我说一下签到,费了点劲不过算是个思路吧!
首先今日头疼任务栏做的相对NB,当领完宝箱后显示的就不再是“任务”二子,而是宝箱倒计时,这个时候使用AutoJs分析元素发现这个元素没有text、desc和ID。肿么办?
下面这个图是没有领取宝箱的。有任务2个字, 所以直接:if (className("android.widget.TextView").text("任务").exists()) {}就可以了。
领过箱子的图是这样的:
下面的操作不一定最好,有好办法的可以私信我。
1、看这个元素的className
2、看这个元素的坐标即bounds
3、find这个元素的className集合
4、输出每一个元素的坐标
5、与要查找的坐标一致即可
let bottomMenu = className("android.widget.RelativeLayout").find();//该控件的集合 toastLog(bottomMenu.length); for(let i=0;i<bottomMenu.length;i++){ toastLog(bottomMenu[i].bounds()); }
经过分析发现元素一共10个其中第4个是原来任务的菜单,所以代码如下:
let b = bottomMenu[3].bounds(); if (click(b.centerX(), b.centerY())) { recordSignTime(appName);//记录时间 }
上面的操作对机器兼容不是很好,不过这个也是我目前想到的好办法了。有其他办法的老铁告诉我一下。
还有一个问题就是读小说的时候会弹出终极大奖,上面的元素其实我已经分析到了就是程序不识别,代码和图我就不发了,有同样的问题老铁私聊我咱们一起解决。
下图是项目的核心代码:
今日头条极速版功能合集链接:https://pan.baidu.com/s/1-92WpcyeIkfTihqG42Lz_Q 提取码:hw96