备注:未经博主允许禁止转载
个人笔记(整理不易,有帮助,收藏+点赞+评论,爱你们!!!你的支持是我写作的动力)
笔记目录:学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客
目录
常见错误问题和解决方法
更多学习:玩转ADB命令(ADB命令使用大全)_手持机adb命令查看所有开放端口-CSDN博客
#查看帮助手册
adb help
一:常用命令
(1)查看设备
offline:设备连接异常;device:正常;unknown:没有连接设备
#查看连接的设备
adb devices
#比如逍遥模拟器连接adb
C:\Users\Administrator>adb connect 127.0.0.1:21503
connected to 127.0.0.1:21503
C:\Users\Administrator>adb devices
List of devices attached
127.0.0.1:21503 device
#查看设备连接状态
adb get-state
(2)查看日志
#查看日志
adb logcat
#ctrl+c结束
#如果使用logcat不指定输出哪个缓冲区的日志,则默认输出main和system的日志
#如果要指定,则
adb logcat -b
#例如指定main缓冲区:adb logcat -b main
#指定输出到文件(格式自己搞)
adb logcat -b main > d:\log.txt
adb logcat -c:清理日志
注意:logcat是实时日志
可查看手机四个缓冲区日志, 包括]radio, system, main, event
radio存放通信的日志, 比如通话短信等;
event是表示手机按键输出等事件日志等;
main指的是手机的应用软件的日志, 是应用层日志输出;
system是系统组件日志;
附加:
可以看到main和system的日志信息
D(Debug):调试;I(Info):通知;E(Error);出错;W(Warning):警告
优先级:低到高
V –Verbose(最低优先级)
D – Debug
I – Info
W – Warning
E – Error
F – Fatal
S – Silent
#可以自己去设置输出的日志级别
#比如我要输出E级别的日志(记得退出是ctrl+c)
adb logcat *:E
(3)输出更多日志内容
#包含logcat日志、功耗、cpu等信息日志
adb bugreport
(4)安装apk应用
#安装apk(d:/xxx.apk是包在哪里的路径)
adb install d:/xxx.apk
#保留数据和缓存文件,重新安装apk
adb install -r d:/xxx.apk
(5)卸载apk应用
#packagename是应用包名
#包名问开发或自己去查询
adb uninstall [-k]<packagename>
-k表示卸载应用但保留数据和缓存文件
可以看到查出夜神的一堆包,但是这样不好找
有个方法:就是把应用全关了,只开你要找的那个应用,然后输入
u0后面的,/前面的就是包名:com.eg.android.AlipayGphoneRC
然后就可以卸载了
(6)获取CPU信息
adb shell cat /proc/cpuinfo
clflush:64 CPU是64位的处理器
processor:1 逻辑处理器的ID
cpu MHz cpu的主频
physical id : 0 物理cpu的ID (如果都是0表示就1个物理cpu)
cpu cores cpu的逻辑个数
model name cpu型号
(7)查看分辨率
adb shell wm size
(8)输出电池信息
adb shell dumpsys battery
Current Battery Service state: #当前电池服务状态
AC powered: false #交流供电(是否在充电)
USB powered: true #USB供电
Wireless powered: false #无线供电
status: 5 #电池状态:2:充电状态 ,其他数字为非充电状态
health: 2 #电池健康状态:只有数字2表示good
present: true #电池是否安装在机身
level: 88 #电量: 百分比
scale: 100 #规模
voltage: 10000 #电池电压
temperature: 344 #电池温度,单位是0.1摄氏度
technology: Li-ion #电池种类
(9)手机电脑相互拷贝文件
#从电脑上推送到手机
adb push d:\log.txt /wjj/b
#从手机上下载文件到电脑
adb pull /wjj/a.txt d:\
查一下手机的目录
有个sdcard,那就进去这个里面
把电脑上的log.txt推送到sdcard里面,我这里不改名字,如果要改名字,在后面加上就行
从手机上下载(拉取)文件到电脑
注意一下:Linux,安卓是正斜杠/,windows是反斜杠\
可以在D盘新建文件夹a,拉取到a里面
(10)截屏
adb shell screencap -p /sdcard/a.jpg
然后再传给电脑
如果觉得很麻烦,可以做成一个批处理文件(自动化工具,加快测试的效率)
我就命名为a.bat文件,直接运行就行了
(11)adb shell进入shell命令状态
上面很多命令都有adb shell这个东西,实际上是通过adb这个桥梁去运行安卓的命令
Android是基于linux内核的,所以在shell状态下可以使用linux命令(所以Linux很多命令在安卓下可以使用)
进入安卓系统,根目录,在这里面可以运行安卓/Linux命令,比如ls命令
(root表示当前用户(管理员);shuamu表示主机名;#表示管理员模式;$表示普通用户模式;/表示根目录)
比如查看分辨率,这里就不用再输入adb shell了
查看设备存储和文件系统
#显示在设备上的所有文件和文件夹
adb shell ls
#显示存储空间的可用和已使用空间,包括内部存储和外部存储(SD卡)
adb shell df
(12)终止/启动 adb服务
#终止adb服务
adb kill-server
#启动adb服务
adb start-server
(13)查看进程
adb shell ps
(14)获取mac地址(网卡的物理地址)
adb shell cat /sys/class/net/wlan0/address
(15)重启手机
adb reboot
(16)查看adb版本
adb version
(17)查看cpu运行情况
#-t显示进程名称;-s按指定行排序;-n在退出前刷新几次;-d刷新间隔;-m显示最大数量
adb shell top -m 10 -s cpu
(18)清除应用数据与缓存
#清除缓存,sqllite数据
adb shell pm clear 包名
(19)强制停止应用
adb shell am force-stop <packagename>
(20)查看当前内存占用
adb shell cat /proc/meminfo
(21)查看连接过的wifi信息
adb shell
su
cat /data/misc/wifi/*.conf
#需要root权限
(22)覆盖安装
覆盖低版本:adb install -r d:\xx.apk
覆盖高版本:adb install -r -d d:\xx.apk
(23)通过wifi进行远程连接手机进行调试
IP:在wifi里面-高级-IP地址
断开连接
adb disconnect 手机IP
(24)启动app
#com.ss.android.ugc.aweme:抖音包名
#.account.white.login.DYLoginActivity:登录活动
adb shell am start -n com.ss.android.ugc.aweme/.account.white.login.DYLoginActivity
(25)坐标点击
在手机里面设置,可以看到上面有坐标
比如我按下评论按钮,不松开,就能看到坐标(上面)
adb shell input tap x坐标 y坐标
如:adb shell input tap 844 1075.3
(26)查看包名
#查看包名
adb shell pm clear <packagename>
#查看所有应用包名
adb shell pm list package
#列出系统apk路径和包名
adb shell pm list package -s
#查看所有第三方应用的包名
adb shell pm list package -3
#查看当前活动的包的信息
adb shell dumpsys activity
#查看正在运行的包名
adb shell dumpsys window | findstr mCurrentFocus
这个也行(查到包名和当前的活动):
adb shell dumpsys activity | find "mFocusedActivity"
(27)查看应用耗电情况
#获取com.eg.android.AlipayGphoneRC应用的耗电情况
adb shell dumpsys batterystats com.eg.android.AlipayGphoneRC
(28)获取系统版本号
#获取系统版本号
adb shell getprop ro.build.version.release
(29)录制视频
adb shell screenrecord /sdcard/test.mp4
二:常见错误问题和解决方法
(1)
在输入adb命令时候,显示more than one devices and emulator
解决方式:
1:查看设备adb devices
2:如果真的是多个设备,那就要为adb命令指定设备的序列号,这里序列号是127.0.0.1:62001
adb -s 序列号 shell
3:如果只有一个设备,而且查到有offline的状态(掉线)
那说明是adb本身的bug导致的,输入下面的命令解决
adb kill-server
adb start-server
(2)
#没看懂是干嘛的
taskkill /f/im/ adb.exe
/f是指定要强制终止进程,
/im(im是image name)是指定要终止的进程的图像名,
执行“taskkill /?”(不带引号)查看相关帮助说明