首先了解一下什么是adb,adb 的运行原理是 PC 端的 adb server 与手机端的守护进程 adbd 建立连接,然后 PC 端的 adb client 通过 adb server 转发命令,adb接收命令后解析运行。
所以如果 adbd 以普通权限执行,有些需要 root 权限才能执行的命令无法直接用adb xxx 执行。这时可以 adb shell 然后 su 后执行命令,也可以让 adb 以 root 权限执行,这个就能随意执行高权限命令了
1.开启adb服务 :
adb start-server
2.关闭adb服务 :
adb kill-server
3.查看adb版本 :
adb version
4.以root权限运行设备:
adb root
5.查询连接的设备 :
adb devices
6.adb发送模拟广播 :
adb shell am broadcast -a android.intent.action.EDIT
7.将设备中的文件拉出 :
adb pull /data/data/com.thundersoft.mdm/database/文件re
8.查看当前设备的进程:
adb shell
ps|grep <包名>
9.打印默认日志数据
adb logcat
10.需要打印日志详细时间的简单数据
adb logcat -v time
11.需要打印级别为Error的信息
adb logcat *:E
12.需要打印时间和级别是Error的信息
adb logcat -v time *:E
13.将日志保存到电脑固定的位置,Windows系统。比如D:\log.txt
adb logcat -v time >D:\log.txt
14.打开应用的activity
adb shell am start -n com.cctv.tv/com.cctv.tv.mvp.ui.activity.MainActivity
15.打印打开activity的事件
adb shell am start -W com.cctv.tv/com.cctv.tv.mvp.ui.activity.MainActivity
16.连接多个设备时,在指定的设备上运行adb命令。例如:
adb -s 192.168.3.211:5555 shell
17.Mac os 使用adb命令将log日志打印到本地
adb logcat -v time >/Users/你的Mac名字/Documents/logs/log.txt
18.清除缓存的log
adb logcat -c
19.退出adb
ctrl+c
20.强制停止APP进程,不会清除APP进程在系统中产生的数据
adb shell am force-stop package
21.停止APP进程,并且清除这个APP进程产生的所有数据,相当于reset
adb shell pm clear package