一、ADB工具介绍
- ADB是一个通用命令行工具,也是Android软件测试开发工作者常用的调试工具
- ADB可以用来安装卸载软件、管理安卓系统软件、启动测试、抓取操作日志等
二、ADB环境准备
- ADK下载地址:tools.android-studio.org/index.php/s…
- ADB下载地址:pan.baidu.com/s/1R-XimjkE… 提取码:3hnt
1、安装安卓SDK
2、安装ADB
3、配置环境变量(计算机右键-属性-高级系统设置-环境变量-新增系统变量)
①配置SDK变量
②配置Path路径
4、启动命令行,运行adb,检查安装结果
未安装时:
已安装成功:
- 显示系统中全部设备 1、
adb devices
这个命令是查看当前连接的设备,连接到计算机的Android设备或者模拟器将会列出显示
-
开启或关闭adb服务
开启:adb start-server
关闭:abd kill-server
-
连接设备 adb connect IP(通过网络连接,需要在同一个局域网,通过IP连接,例如192.168.1.61)
断开设备:adb disconnerct IP
如果用数据线连接,直接连,在手机上点击授权即可,然后打开终端,输入adb devices 就OK
- 安装、卸载软件包 1、安装软件:
adb install -r (APK路径)
注释:APK路径,可以直接拖拽到终端即可
-r代表如果apk已安装,重新安装apk并保留数据和缓存文件。
例如:adb install com.achievo.vipshop
(安装唯品会)
adb install -t
允许测试包
adb install -d
允许进行将见状,也就是安装的比手机上带的版本低
adb install -g
为应用程序授予所有运行时的权限
2、卸载软件:adb uninstall (APK包名)
例如:adb uninstall com.achievo.vipshop
(卸载唯品会)
- 获取软件包名
1、列出手机装的手游app的包名:adb shell pm list packages
2、列出系统应用的所有包名:adb shell pm list packages -s
3、列出除了系统应用的第三方应用包名:adb shell pm list packages -3
4、显示当前打开的软件包名:
windows:adb shell dumpays window | findstr mCurrentFocus
(需要打开目标软件)
Mac/Linux:adb shell dumpsys window | grep mCurrentFocus
-
清除应用数据与缓存:
adb shell pm clesr (apk包名)
-
启动、停止应用
1、启动:adb shell am start 包名/Activity名
2、停止:adb shell am force-stop (apk 包名)
-
pull、push 1、从手机pull文件到电脑:
adb pull /sdcard/DCIM/Camera/ /Users/mac/Desktop/xxx
2、把电脑资料push到手机目录:adb push /Users/mac/Desktop/abc.xlsx /sdcard
-
获取app日志 1、格式:adb logcat > 指定路径
2、举例:
①adb logcat >C:\Users\18810\Desktop\1.txt
②执行完成后Ctrl+C结束日志获取
③查看获取的1.txt文档即可 -
获取app启动数据 1、格式:
adb shell am start -W 包名/activity名
2、例如:adb shell am start -W com.achievo.vipshop/com.achievo.vipshop.activity.LodingActivity
或者adb shell am start -W com.achievo.vipshop/.activity.LodingActivity
3、常见参数:
-S:表示每次启动前先强行停止
-R:表示重复测试次数
4、常见的三个指标:
ThisTime:当前activity的时间
TotalTime:应用的启动时间,包括创建进程、App初始化、Activity初始划到界面显示
WaitTime:前一个应用activity pause的时间+TotalTime
举例:
adb shell am start -S -R 5 -W com.tpshop.malls/com.tpshop.malls.SplashActivity
-
获取内存 1、格式:
adb shell dumpsys meminfo 包名
2、Native/Dalvik的Heap信息
如果发现这个值一直增长,则代表程序可能出现了内存泄漏(Out of memary)
3、Total的PSS信息
这个值是应用真正占据的内存大小,通过这个信息,可以轻松判别手机中哪些程序占内存比较大 -
查看CPU占用情况 1、格式:
adb shell top -m 10 -s cpu
(-m显示最大数量,-s按指定行排序)
参数含义:
PID:应用程序ID
S:进程的状态(S表示睡眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值时负数)
#THR:程序当前所用的线程数
VSS:虚拟耗用内存(包括共享库占用的内存)
RSS:实际使用物理内存(包含共享库占用的内存)
PCY:前台(fg)和后台(bg)进程
UID:用户身份ID
Name:应用程序名称
- 获取app使用流量 1、获取userld(返回数据为userld=)
adb shell dumpsys package 包名 | findstr userld
2、获取上行流量(返回数据单位bytes)
adb shell cat proc/uid_stat/userld/tcp_snd
3、获取下行流量(返回数据单位bytes)
adb shell cat proc/uid_stat/userld/tcp_rcv
- Monkey测试
1、语法:adb shell monkey -p 包名 -v(日志) 次数 >C:\日志.txt
2、说明:
-P:指定包名(所有命令都在此包内执行,如不指定,则在整个系统内执行)
-V log详细程度(最高支持‘-v -v -v’最详细)
–throttle 单步延时(每步操作间隔,单位毫秒)
–pct-touch 点击事件
举例:
不控制事件:
adb shell monkey -p com.tpshop.malls -v -v -v 1000 >C:\User\18810\Desktop\monkey.txt
控制事件:
adb shell monkey -p com.tpshop.malls --throttle 100 --pct-touch 50 --pct-motion 50 -v -v -v 1000 >C:Users\18810\Desktop\monkey.txt
- monkey 命令参数拓展
今天的文章常用 adb命令分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/16073.html