-
-
[原创]模拟点击品类分析
-
发表于:
2023-2-22 12:06
10257
-
相关软件:
按键小精灵免root版本(已分析)
total control
游戏蜂窝(已下线)
hamibot
auto.js
关键权限:无障碍服务
官网:https://hamibot.com/ , 能用来群控。
QQ音乐签到脚本为例子;
hamibot 可以实现,打开QQ音乐, 点击”我的“,点击”每日签到“,完成签到后,上划调出任务列表,划掉 QQ音乐。
关键点:
启动目标应用
目标点击位置确定手段
点击操作
https://pro.autojs.org/docs/zh/guide/
关键权限:无障碍服务
思路类似, 分为开源版本和商用版本,原理应该是类似的,先看开源版本研究原理,再从商用版本验证。
关键点:
点击操作
群控软件, http://www.sigma-rt.com/en/tc/script/js-api.php?version=9.0.u12&code=JS.API.List&verify=11372-3.4.0
看接口可能使用input event来实现
关键点:
点击操作
关键权限:申请录制屏幕权限
申请录制权限,可能用于识图。
关键点:
启动应用
点击
从四个软件分析, 实现模拟点击分为3种情况
root权限
无障碍服务
免root,不使用无障碍
先从按键小精灵免root开始。
先看logcat
发现关键类没有执行,发现了其他进程(能不能通过代码辅助定位到其他进程呢 , 这里有运气成分,猜出来了)。
悬浮窗进程在com.xxx.xxx:enginfloat , 悬浮窗的类com.cyjh.elfin.floatingwindowprocess.floatview.ElfinFloatView
点击开始时的日志
启动应用
有点类似于VA ,按键小精灵自身来加载apk ,但是兼容性做的不好,实际无法自动打开app ,app会直接白屏。
执行脚本的日志。进程对象com.xxx.xxx:enginfloat
设计架构和按键精灵一致 ,悬浮窗或者服务,发送消息给其他进程完成操作
找到对应的handler处理函数
运行的实例
核心找f的实例,调用f实例的b方法。
OK , com.cyjh.mq.sdk.MqRunnerLite , 定位到最内部的一层
com.elfin.engin.c$4
这个方法是个接口 ,需要找到其实现。
com.cyjh.elfin.floatingwindowprocess.d.b$2
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)