-
-
[分享]Android记录用户行为
-
发表于: 2022-5-7 13:16 5101
-
这是一个脚本,它依赖于类Uinx系统上可以运行的某些命令(如awk,sed,grep),基于这些命令并参考Android系统的 getevent和sendevent机制,对Android机器上的所有用户操作行为,如点击屏幕,物理按键等事件进行录制,并提供回放功能 。
源码:[脚本和程序的源代码]
(https://github.com/jituo666/AndroidEventRecorder.git)
【应用场景】 可以用作自动化测试,模拟人机交互等
【优缺点】 优点,
1)跨APK的系统级录制与回放,对整个系统的任何设备的输入事件(触摸屏\物理按键\陀螺仪\各种传感器)都可以录制回放
2)如果要自动化测试某个apk不需要对apk本身做任何修改(相对robotium测试框架来说,这个算是个亮点)
3)录制回放的操作步骤简单,一次录制,重复利用
4) 对于被录制的APP构建形式不受限制,可以是natvie的,也可以是hybrid或者是webapp。
5)各种输入事件,如单点多点触摸,点击按键,滑动,滚动等都可以录制回放 缺点,1)不同的机器需要做一些适配,修改config.ini文件即可 2) 回放的效果和原始效果的相似度并没有达到100%,根据机器的性能略有偏差
【环境依赖】 1)类Unix系统,Mac OS 或 Ubuntu 2) Android开发相关的adb 运行环境,ndk编译环境 3)请安装awk,sed,grep工具集
【目录结构】
recorder.sh: 录制脚本,使用方法:./recorder.sh -c
playback.sh: 回放脚本,使用方法:./playback.sh
config.ini: 配置文件,记录你要录制回放的apk信息,以及输入设备信息(不同的机器不一样)
template.c: 模板C文件,生成回放程序时需要以此文件为基础
readme.txt: 帮助说明文件
【用法】 安装你要测试的apk到你的手机,配置apk和手机的相关信息到config.ini文件中,手机通过USB线连接到PC
1)录制:执行命令 ./recorder.sh -c
2)回放:执行命令 ./playback.sh 说明:录制命令有两个命令选项 -c:录制成C语言的可执行程序cmds,通过 adb shell cmds 执行回放 -s:录制成shell脚本文件cmds.sh,通过 adb shell sh cmds.sh 执行回放 第二种通过shell脚本文件的方式,由于解析命令、执行命令的效率比较低,回放效果一般。 建议仅当简单的录制回放,特别是仅有按键事件,没有滑动事件时使用。
【注意事项】 首次运行时请不要改变当前的目录结构和目录下的文件内容(除了config.ini),以免修改错误运行失败.等了解程序运行原理后再 修改调试。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
- Android开发人员对抗逆向破解的策略 2834
- [原创]找出某U3D游戏http接口中的关键sign算法,Java复写该算法 11318
- [分享]Android记录用户行为 5102
- [分享]Android逆向知识汇总 9966