ADB常用指令集合
adb shell ps |grep adbd
adb devices #查看当前连接设备
adb get-state #查看设备连接状态
1.device:设备正常连接
2.offline:连接出现异常,设备无响应
3.unknown:没有连接设备
adb kill-server adb start-server #关闭启动服务
adb logcat
adb bugreport #打印dumpsys、dumpstate、logcat的输出,也是用于分析错误
adb install -r adb uninstall #装包 卸包
adb pull #将安卓设备上的文件到处到本地
adb push #将本地文件推到设备上
adb root
adb remount #挂载系统文件为可读写状态 首先要root
adb reboot [bootloader|recovery]
1. bootloader 重启设备,进入fastboot模式
2. recovery 重启设备,进入recovery模式
adb forward tcp:1314 tcp:8888 将宿主机上的某个端口重定向到设备的某个端口
root -> adbWireless
adb connect x.x.x.x
pm(package manager)
adb shell pm list package
adb shell pm package -s #列出系统应用
adb shell pm package -3 #列出第三方应用
adb shell pm list package -f #列出应用包名及对应的apk的位置
命令之后添加关键字过滤 寻找需要的包名
adb shell pm list package -f -3 -i jingdong (jingdong为过滤的关键字)
已知包名:
adb shell pm path com.xxx.app.mall #获得包路径
adb shell pm dump com.xxx.app.mall #获得包dump信息
adb shell pm list instrumentation #列出含单元测试的应用
pm install
1. 目标apk存放与pc端,请用adb install 安装
2. 目标apk存放与安卓设备上,用pm install 安装
pm uninstall 卸载应用 #同上
pm clear #清除应用数据
pm set-install-location pm get-install-location #设置应用安装位置,获取应用安装位置
[0/auto]: 默认为自动
[1/internal]:默认安装在手机内部
[2/external]:默认安装在外部存储
am(activity manager)
am start
adb shell am start -n com.android.camera/.Camera #启动相机
adb shell am start -S com.android.camera/.Camera #先停止目标应用,再启动
adb shell am start -W com.android.camera/.Camera #等待应用完成启动
------启动默认浏览器打开一个网页------
adb shell am start -a android.intent.action.VIEW -d http://www.baidu.com
------启动拨号器打10086
adb shell am start -a android.intent.action.CALL -d tel:10086
am instrument 启动一个instrumentation
am monitor #监控crash和ANR
am force-stop #后跟包名,结束应用
am startservice #启动一个服务
am broadcast #发送一个广播
input
input text 发送文本内容,不能发送中文
adb shell input text test123 前提先讲键盘设置为英文键盘
adb shell input keyevent KEYCODE_HOME
adb shell input keyevent 3 #m模拟按下HOME键
adb shell input tap 500 500
adb shell input swipe 900 500 100 500
---如果版本不低于4.4 可以模拟长按事件
adb shell input swip 500 500 501 501 2000
screnncap #截图命令
adb shell screencap -p /sdcard/screen.png
screenrecord #新增的录制命令
adb shell screenrecord sdcard/record.mp4 #执行命令后操作手机,ctrl+c 录制结果保存至sdcard
uiautomator
执行UI automation tests #获取当前界面的控件信息
adb shell uiautomator dump #dump获取控件信息 不加【file】,默认保存在sdcard下
ime 输入法
输入法
adb shell ime list -s #列出设备上的输入法
adb shell ime set com.baidu.input_mi/.ImeService #选择输入法
wm 获得屏幕分辨率
adb shell wm size
settings (Android4.2 中新增)
该命令可以很方便的更改系统设置中的参数(如修改系统默认输入法)
#获得系统的默认输入法
adb shell settings get secure default_input_method
#put命令更改默认输入法
adb shell settings put secure default_input_method xxx(输入法)
#获取亮度是否为自动获取
adb shell settings get system screen_brightness_mode
#获取当前亮度值
adb shell settings get system screen_brightness
#更改亮度值(0-255之间)
adb shell settings put system screen_brightness 150
#获取屏幕休眠时间
adb shell settings get system screen_off_timeout
#更改休眠时间,10分钟
adb shell settings put system screen_off_timeout 600000
#获取日期时间选项中通过网络获取时间的状态,1为允许,0为不允许
adb shell settings get global auto_time
adb shell put global auto_time 0
以及获取,修改Wi-Fi状态 飞行模式(airlpane_mode_on)这里也是appium中
getNetworkConnection获取设备网络状态的方法
dumpsys
adb shell dumpsys 默认打印出当前系统所有service信息,在后面可以加上具体的服务名
adb shell service list #列出所有service
#列出当前运行的服务
adb sbell dumpsys #开始部分列出所有运行的service
adb shell dumpsys| findstr DUMP
#获取设备分辨率
adb shell dumpsys display | findstr DisplayDeviceInfo
#获取设备电池信息
adb shell dumpsys battery
#获取cpu信息
adb shell dumpsys cpuinfo
#获取内存信息
adb shell dumpsys meminfo #获取具体应用的内存信息,可加上包名
adb shell dumpsys meninfo package_name
#获取Activity信息
adb shell dumpsys activity #加-h获得帮助信息
adb shell dumpsys activity top #获取当前页面的UI信息
adb shell dumpsys activity top | findstr ACTIVITY
#获取package信息
adb shell dumpsys package
adb shell dumpsys package PACKAGE_NAME #获取某个包信息
#获取通知信息
adb shell dumpsys notification
#获取wifi信息
adb shell dumpsys wifi
#获取帧率
adb shell dumpsys gfxinfo
#获取电源管理信息
adb shell dumpsys power
可以获取到是否处于锁屏状态:mWakefulness=Asleep或者mScreenOn=false
亮度值:mScreenBrightness=255
屏幕休眠时间:Screen off timeout: 60000 ms
屏幕分辨率:mDisplayWidth=1440,mDisplayHeight=2560
获取电话信息
adb shell dumpsys telephony.registry
可以获取到电话状态,例如
mCallState值为0,表示待机状态、1表示来电未接听状态、2表示电话占线状态
mCallForwarding=false #是否启用呼叫转移
mDataConnectionState=2 #0:无数据连接 1:正在创建数据连接 2:已连接
mDataConnectionPossible=true #是否有数据连接
mDataConnectionApn= #APN名称
等
log
可以在logcat里面打印你设定的信息
#-p 优先级 -t tag 标签 "message"
adb shell log -p d -t xuxu "test adb shell log"
~ adb logcat -v time -s xuxu
getprop #查看Android设备的参数信息
adb shell getprop 以key:value形式保存
adb shell getprop ro.build.version.sdk #获取某个key的值
其他Linux命令cat、cd、chmod、cp、date、df、du、grep、kill、ln、ls、lsof、netstat、ping、ps、rm、rmdir、top、touch、重定向符号 ">" ">>"、管道 "|"
**这里要加引号**
adb shell "monkey -p com.android.settings 5000 > sdcard/monkey.log"
adb shell getprop 参数
网友评论