干过移动端测试的同学,应该对adb都不陌生

adb 是安卓调试桥,用于电脑端与安卓模拟器或安卓真实设备交互。

 

那我们来做个挑战吧,下面是常用的adb命令,看谁能在5分钟之内背得多!


 

常用adb命令:

 指定相应的seriaNum号的设备去执行adb 命令

adb -s <seriaNum> command  

获取连接状态

adb devices 
# device   已经连上# offline   未连接成功或者无响应# no device 没有设备/模拟器连接# unauthorized  手机没有信任

启动 adb 服务

adb start-server 

停止 adb 服务

adb kill-server 

查看 adb 版本

adb version 

进入 adb 命令行

adb shell

通过 ip 地址连接设备

adb connect  <device-ip> 

安装apk

adb install xxx.apk 

覆盖安装apk

adb install -r xxx.apk 

卸载应用,-k 保留数据和缓存

adb uninstall [-k] <packageName> 

查看端上日志

adb logcat | grep xxx 

清空日志

adb logcat -c 

 

查看warning日志,并且输出时间戳

adb logcat -v time *:W

 获取系统属性

adb shell getprop

查看设备型号

adb shell getprop ro.product.model 

 查看安卓系统版本

adb shell getprop ro.build.version.release 

查看屏幕分辨率

adb shell wm size 

查看连过的wifi密码

adb shell; su; cat /data/misc/wifi/*.conf 

查看进程

adb shell ps 

杀死进程 

adb kill 'pid' 

重启手机

adb reboot 

 

pm 命令

查看所有的应用程序

adb shell pm list packages 

只显示系统应用程序

adb shell pm list packages -s 

只显示第三方应用程序

adb shell pm list packages -3

清楚应用程序缓存数据

adb shell pm clear <packageName> 

 

am 命令

查看前台控件

adb shell dumpsys activity activites | [findstr|grep] mFocusedActivity

调起一个activity

adb shell am start -n activityName 

强制停止应用

adb shell am force-stop <packageName> 

启动一个页面

adb shell am start -d scheme  adb

 


 

文件管理

复制文件到电脑

adb pull <设备里的文件路径> [电脑的文件路径] 

复制文件到设备

adb push <电脑里的文件路径> [设备里的目录] 

 

按键操作

执行按键操作

adb shell input keyevent <eventNum> 

屏幕截屏,-p 表示以png格式输出

adb shell screencap -p /sdcard/sc.png

屏幕录制

adb shell screenrecord  /sdcard/filename.mp4 

 

monkey

执行原生Monkey

adb shell monkey -p <packageName> -v 500  > monkey.log # -p 包名,# -v 最高警告的错误日志才输出,# 500 执行500次# 日志重定向到monkey.log

monkey 参数:

-p 包名

-s 设置种子

--ignore-crashes 出现 crash 继续执行

--ignore-timeouts 出现 anr 继续执行

--pct-touch <rateNum> 触摸事件占比(手指放下,抬起)

--pct-motion <rateNum> 动作事件占比(手指放下,移动,抬起)

–pct-trackball <rateNum> 轨迹球事件占比(单纯的move)

–pct-nav <rateNum> 基本导航事件,用于方向输入设备的上下左右操作

–pct-syskeys <rateNum> 系统按键事件。

–pct-appswitch <rateNum> 应用启动事件

–pct-anyevent <rateNum> 其他未提及事件