一、Monkey压力测试的原理
1. adb shell monkey的运行机制
实际上是执行手机中/system/bin/monkey这个脚本;
2. Monkey事件注入机制
Monkey注入系统事件是通过 framework 层的 hidenApi (如:activemanager,inputmanager,windowmanager) 获取系统服务。
Monkey中有11种事件,这些事件在MonkeyEventSource中对事件之间的比例进行设置。Monkey事件根据类型比例生成事件队列,循环查找事件。
a.触摸事件(inputmanager):包括屏幕以及物理键的触摸,滑动,点击事件。
b.Activity事件(activemanager):是指我们调用Android系统组件的事件。
c.Window事件(windowmanager):是指操作Window的事件,例如转屏。
3.Monkey核心类
a. Monkey.java, 程序的入口,根据参数选择合适的MonkeyEventSource,并适时触发MonkeyEvent;
b. MonkeyEventSource.java, MonkeyEvent的工厂,是一个接口;
c. MonkeyEvent.java,各种事件的具体实现。
二、查找手机上的安装包包名
1.adb shell pm list package 查看手机上所有的安装包
2.adb shell pm list package -3 查看第三方安装包

3.adb shell pm list packages -s 查看系统的包
4.adb shell pm list packages -e “要搜索的内容” &nb

本文介绍了adb shell monkey进行Android应用的压力测试,包括Monkey测试的原理、事件注入机制、核心类解析,以及如何查找手机上的安装包。此外,还详细阐述了Monkey命令的基本参数,如指定包名、日志详细程度、事件间隔、忽略错误等,并提供了日志分析的方法,帮助开发者定位和解决问题。
最低0.47元/天 解锁文章
1280

被折叠的 条评论
为什么被折叠?



