adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以方便调试Android程序。
安装完JDK需要配置环境变量:
JAVA_HOME::JDK的安装目录
PATH:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
CMD命令验证环境是否配置完成:java -version
https://developer.android.google.cn/studio/releases/platform-tools
CMD命令验证环境是否配置完成:android -version
1模拟机
Adb connect 127.0.0.1:7555 这个可以通过模拟器官网查询 不同模拟器不同端口
Adb devices
2真机
手机处于调试模式:安卓 找到版本 点击7下 就会进入开发者模式 打开usb调试
电脑需要安装手机驱动:豌豆荚自动下载驱动(用完就删,容易占用端口)
查看状态
adb devices :device正常 offline链接无响应 unauthorized未授权
adb get-state
关闭服务
Adb kill-server
安装
Adb install <apk路劲>
Adb install -r <apk路劲> 覆盖安装
指定设备:Adb -s <指定设备 可以通过adb devices查看 当有多台设备>install <apk路劲>
卸载
Adb uninstall
注:操作系统不一样命令需要区分,mac、linux用grep,Windows用findstr
1 先打开页面
2 adb shell “dumpsys window | grep mCurrentFocus”
adb logcat ActivityManager:I | grep “cmp”
adb shell am start -n [包名 / 页面名]
显示当前进程的CPU信息:top -n 10 -d 5 | grep [PID] [注]:-n表示刷新次数,-d表示刷新间隔
查看当前系统 CPU 使用情况 : adb shell dumpsys cpuinfo 是某一时间之内的占有情况
查看当前系统的内存 : adb shell dumpsys meminfo 通过这个情况查看当前应用内存占用率。可以分析 物理内存、虚拟内存的占用量。
查看某个应用的内存 : adb shell dumpsys meminfo 应用名。 通过定期采集数据 来分析代码当中是否会有内存问题 例如内存泄漏 ( 内存长期占有量较高,没有及时回收 )
查看流量:
进程:
top 命令 : linux 使用 top 命令来获取性能指标的 ,安卓也可用
adb shell top 来获取各个系统进程占有情况(实时)
过滤 某个包的性能指标 : adb shell top | grep 包名
固定时间 每隔 1 s : adb shell top -d 1 | grep 包名
打印默认日志数据 : adb logcat
使用不同颜色来打印每个优先级 : adb logcat -v color
将日志输出到文件中 : adb logcat -f <文件地址 手机端的> 可以通过 pull 上传到电脑查看.
保存日志到电脑文件上 : adb logcat > ~/Downloads/android.log. > 表示重定向
清理已缓存的日志 : adb logcat -c
电脑到手机上传输(电脑往外推) :adb push 电脑路径 设备路径
手机文件拉取下来 :adb pull 设备路径 电脑路径
运行某个包(对某软件测试) : adb shell monkey -p 包名 事件数
打印详细日志 : adb shell monkey -v 事件数。 -vv 更加详细的日志 -vvv 最全面的日志
运行多个包 : adb shell monkey -p 包名 -p 包名 … - vvv 事件数
-s ,用于指定伪随机数生成器的seed值
命令:adb shell monkey -p 包名 –s seed值 执行次数
如果seed值相同,则两次Monkey测试所产生的事件序列也相同的,示例:
测试1:adb shell monkey -p com.kugou.android –s 1540475754297 100
--throttle ,用于指定用户事件的操作间隔时延,单位是毫秒
如果不指定这个参数,monkey会尽可能快的生成和发送消息
命令:adb shell monkey -p 包名 --throttle 3000 100
11种事件
设置事件比例 :会默认分配 ,但是 比如想测试点击事件较多,就可以设置点击比例大一点 --pct-touch 80 不超100%
忽略异常 : monkey就是想长时间运行, 可以在有异常的时候继续执行,如果遇到异常就可以保存到日志中
保存日志 :
法一 : adb shell monkey 100 后面加 > 文件名字.log。查看: cat 文件名.log 有大量无用日志,占用空间
法二 : adb logcat -v time ‘*:E’ > monkey.log 获取 error 级别日志