ADB的使用

Mac上设置

显示路径在Finder:

设置后要重启Finder才能显示

1
defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES

复制当前文件夹路径的快捷键

1
Option+Command+C

打开android sdk的所在目录 复制文件夹路径

比如 我的是

1
/Users/psvmc/Library/Android/sdk

我用的ZSH 所以配置环境变量是在~/.zshrc

1
open ~/.zshrc

添加以下配置

1
2
3
export ANDROID_HOME=/Users/psvmc/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

重启ZSH

如果用的系统的终端 配置的路径为

1
open ~/.bash_profile

修改后运行以下命令使之生效

1
source ~/.bash_profile

Windows上配置

下载ADB

链接:https://pan.baidu.com/s/1RWvvHKoVcLX3KZX7u7eE3w
提取码:rulb

配置环境变量

ADB命令

结束/启动 adb 服务

1
2
adb kill-server
adb start-server

查看设备列表及状态

1
adb devices

设备的状态有 3 种

  • device:设备正常连接
  • offline:连接出现异常,设备无响应
  • unknown:没有连接设备

打印 Android 的系统日志

1
adb logcat

adb bugreport : 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误

输出比较多,建议重定向到一个文件中

1
adb bugreport > ~/Downloads/bugreport.log

1
adb logcat > ~/Downloads/mylog.log

存放PC 过滤错误

1
adb logcat -s '*:E' > D:/mylog.log

存放PC 不过滤

1
adb logcat > D:/mylog.log

存放PC 过滤错误 添加时间

1
adb logcat -v time -s *:E > D:/mylog.log

重启手机

1
adb reboot

只有在运行上一条命令并成功连接手机,此命令起作用。

卸载已安装应用

1
adb uninstall com.example.myapp

com.example.myapp所在位置为APP包名

安装应用

1
adb install -r taobao.apk

手机文件传送到电脑

1
adb pull /sdcard/gen.apk ~/Downloads/

/sdcard/gen.apk待传输文件路径

电脑文件发送到手机

1
adb push gen.apk /sdcard/

gen.apk为待发送文件的文件名

查看当前adb工具版本号

1
adb version

获取手机序列号

1
adb get-serialno

这个命令获取到的序列号就是利用adb devices命令获取的设备列表的序列号

远程连接 Android 设备

1
adb connect 192.168.1.102

ADB Shell命令

查看正在运行的Activity

MAC

1
adb shell dumpsys activity | grep -i run

Win

1
adb shell dumpsys activity activities | findstr "Run"

查看手机目录及文件

1
2
3
adb shell
ls
cd /sdcard/

退出

1
exit

点亮/熄灭手机屏幕

1
adb shell input keyevent 26

keyevent 后面数字是键值,26代表手机电源键

获取CPU型号等信息

1
adb shell cat /proc/cpuinfo

HardWare后面的就是我们CPU的型号

屏幕截图

屏幕截图,并将截图存放在sdcard下,命名为screen.png

1
adb shell screencap /sdcard/screen.png

可搭配指令adb pull /sdcard/screen.png将文件复制到电脑

录制屏幕

录制屏幕(Android4.4以上可用)

1
adb shell screenrecord /sdcard/demo.mp4

按下ctrl+c,停止录制,搭配指令adb pull /sdcard/demo.mp4可将录制文件复制到电脑

安装应用

1
adb shell pm install taobao.apk

目标 apk 存放于 PC 端,请用 adb install 安装

目标 apk 存放于 Android 设备上,请用 pm install 安装

卸载应用

1
adb shell pm uninstall com.example.myapp

列出手机上的应用

列出所有应用

1
adb shell pm list package

列出系统应用

1
adb shell pm list package -s

列出第三方应用

1
adb shell pm list package -3

列出应用包名及对应的apk名及存放位置

1
adb shell pm list package -f

列出第三方应用及存放位置

1
adb shell pm list package -f -3

列出应用包名及其安装来源

1
adb shell pm list package -i

过滤关键字,可以很方便地查找自己想要的应用

1
adb shell pm list package -f -3 -i taobao

列出对应包名的 .apk 位置

1
adb shell pm path com.taobao.taobao

列出指定应用的 dump 信息

1
adb shell pm dump com.taobao.taobao

清除应用数据

1
adb shell pm clear com.taobao.taobao

获取应用安装位置

1
adb shell pm get-install-location

设置应用安装位置

1
adb shell pm set-install-location 2
  • [0/auto]:默认为自动
  • [1/internal]:默认为安装在手机内部
  • [2/external]:默认安装在外部存储

查看手机的信息

1
adb shell wm size

其它命令

wm size: return or override display size.
width and height in pixels unless suffixed with ‘dp’.

wm density: override display density.

wm overscan: set overscan area for display.

wm scaling: set display scaling mode.

wm screen-capture: enable/disable screen capture.

wm dismiss-keyguard: dismiss the keyguard, prompting the user for auth if necessary.

wm surface-trace: log surface commands to stdout in a binary format.

查看手机输入法

1
adb shell ime list -s

浏览器打开网址

1
adb shell am start -a android.intent.action.VIEW -d http://www.psvmc.cn

启动拨号器拨打 10086

1
adb shell am start -a android.intent.action.CALL -d tel:10086

启动Activivy

1
adb shell am start -n com.huawei.camera/com.huawei.camera

先停止再启动

1
adb shell am start -S com.huawei.camera/com.huawei.camera

启动相机

1
adb shell am start -a android.media.action.STILL_IMAGE_CAMERA

监控 crash 与 ANR

1
adb shell am monitor