1、查看接入的设备

adb devices

2、以root身份执行登录设备shell(单设备)

adb shell root

3、登入设备的shell内核(单设备)

adb shell

4、shell进入指定的设备

1
2
3
4
adb -s f115e4ef shell root
adb -s f115e4ef shell
adb -s 9f6b09fc shell root
adb -s 9f6b09fc shell

5、上传文件:从电脑推送到手机: adb push 电脑文件绝对路径 设备绝对路径

1
2
3
adb push c:\users\admin\desktop\aaa.mp4 /sdcard/movies
push到指定设备:增加-s参数
adb -s 9PAMWWX88LFEWSNF push gnss_test /oemdata/bin

6、下载文件:从设备拉取到电脑:adb pull 设备文件绝对路径 电脑目录(非根路径)

1
2
3
4
5
adb pull /usrdata/logs/syslog_file_index.ini D:\workfiles
# 相对路径拉取文件
adb shell 'ls sdcard/gps*.trace' | tr -d '\r' | xargs -n1 adb pull
# 绝对路径拉取文件
adb shell 'ls /sdcard/*.txt' | tr -d '\r' | sed -e 's/^\///' | xargs -n1 adb pull

7、下载文件:拉取整个目录到指定路径(目录为可读写权限)

1
adb pull /usrdata/logs d:\workfiles

8、打印日志命令

1
adb logcat -v time > d:/2.log

9、adb wifi连接设备

1
2
3
adb connect 192.168.1.102
# 指定端口:
adb connect 192.168.1.102:5555

10、指定IP连接默认连接端口

1
adb tcpip 5555

11、查看adb版本

1
2
3
4
5
adb version

## 12、查看帮助信息
```shell
adb help

13、启动adb服务

1
adb start-server

14、关闭adb服务

1
adb kill-server

15、获取Android管理员权限

1
adb root

16、获取 System 分区可写权限,需要 root 后才能有这个权限

1
adb remount

17、apk操作指令:显示所有包名

1
adb shell pm list packages

18、apk操作指令:显示系统应用包名

1
adb shell pm list packages –s

19、apk操作指令:显示第三方应用包名

1
adb shell pm list packages -3

20、apk操作指令:apk安装

20-1、卸载安装(绝对路径)

1
adb install <apk 文件路径 >

20-2、不卸载覆盖安装(绝对路径)

1
adb install -r <apk 文件路径 >

21、apk操作指令:将设备上的apk卸载

1
adb uninstall <apk 包名 >

22、文件操作指令:把本地的文件或文件夹复制到设备(手机)

1
adb push < 本地路径 > < 手机端路径 >

23、文件操作指令:把设备(手机)的文件或文件夹复制到本地

1
adb pull < 手机端文件 > < 本地路径 >

24、日志操作指令:输出实时日志并保存在本地文件

24-1、覆盖写入

1
2
3
# 通过 Ctrl+C 来停止。抓取日志的步骤:
# 先输入命令启动日志,然后操作 App,复现 bug,再 ctrl+c 停止日志,分析本地保存的文件
adb logcat -v time > D:\logs\logcat.log

24-2、追加写入

1
adb logcat -v time >> D:\logs\logcat.log

24-3、打印调试日志(过滤日志级别)

1
2
3
4
5
6
7
8
9
# 优先级是下面的字符,顺序是从低到高:
V — 明细 verbose(最低优先级)
D — 调试 debug
I — 信息 info
W — 警告 warn
E — 错误 error
F — 严重错误 fatal
S — 无记载 silent)
adb logcat -v time -s *:E > /mmt/sdcard/1.log

24-4、打印日志到设备文件

1
2
3
adb -s 333ec96e shell
# 进入设备后执行
logcat -f /usrdata/logs/myLogcat.log

25、日志操作指令:输入指令后开始抓取 Log,不需要按 Ctrl+C 来停止

1
2
3
# 会自动化停止 Log 打印,并将日志文件保存在本地。抓取日志的步骤:
# 主要抓取执行命令时往前 10 分钟左右的日志信息,所以在出现 bug 后立即采用此方法才有效,问题出现时间太长不建议使用此方法
adb bugreport > D:\logs\ bugreport.log

26、系统操作指令:获取设备型号

1
adb shell getprop ro.product.model

27、系统操作指令:获取设备型号

1
adb get-serialno

28、系统操作指令:获取设备屏幕分辨率

1
adb shell wm size

29、系统操作指令:屏幕截图

1
adb shell screencap -p /sdcard/mms.png

30、系统操作指令:将截图导出到本地

1
adb pull /sdcard/mms.png D:\app

31、系统操作指令:查看前台应用包名(Android 7.0 以下)

1
2
# 必须先启动 app
adb shell dumpsys activity | find "mFocusedActivity"

32、系统操作指令:查看前台应用包名(Android 8.0 以上)

1
2
# 必须先启动 app
adb shell dumpsys activity | find "mResumedActivity"

33、push文件并同时给文件赋予权限

1
adb push spi_test /oemdata/bin && adb shell chmod +x /oemdata/bin/spi_test

34、adb服务重启

1
2
3
4
把adb服务杀死:
adb kill-server
重启adb服务:
adb reconnect

35、wifi操作

1
2
3
4
5
6
- 打开wifi:<br>
adb shell "svc wifi enable"
- 关闭wifi:<br>
adb shell "svc wifi disable"
- 查询wifi状态<br>
adb shell settings get global wifi_on

附录、其他进阶操作

http://www.51ste.com/share/det-816.html