一些比较实用的 Android adb 命令分享

时间:2022-04-26 23:35:13

下面是一些我找到Android的ADB有用的命令。可以手动或使用自动构建和测试过程。

查看设备

复制代码 代码如下:

adb devices


如果多个设备连接则使用 use adb -s DEVICE_ID连接到目标设备

 

安装应用

使用install命令安装一个apk包,如果应用已安装到了该设备,则使用-r重新安装和保持原来的应用数据

复制代码 代码如下:


adb install -r APK_FILE

 

#example
adb install -r com.feiliu.wjbd

 

卸载一个应用

复制代码 代码如下:


adb uninstall APK_FILE

 

#example
adb uninstall com.feiliu.wjbd

 

启动一个页面

复制代码 代码如下:


adb shell am start PACKAGE_NAME/ACTIVITY_IN_PACKAGE
adb shell am start PACKAGE_NAME/FULLY_QUALIFIED_ACTIVITY

 

# example
adb shell am start -n com.feiliu.wjbd/.MainActivity
adb shell am start -n com.feiliu.wjbd/com.feiliu.wjbd.MainActivity

 

进入设备的shell界面

复制代码 代码如下:

adb shell

 

截屏

Sergei Shvetsov想出了一个很好方法,获得一个屏幕截图且使用shell screencap通过perl输出到本地目录。具体查看他的博客给出的解释

复制代码 代码如下:

adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png

 

解屏

这个命令会发送一个解屏事件到锁屏的设备上

复制代码 代码如下:

adb shell input keyevent 82

 

日志

命令行显示Log

复制代码 代码如下:

adb logcat


根据tagname过滤

复制代码 代码如下:


adb logcat -s TAG_NAME
adb logcat -s TAG_NAME_1 TAG_NAME_2

 

#example
adb logcat -s TEST
adb logcat -s TEST MYAPP

 

优先过滤

显示一个特定的优先级警告及以上的日志。

复制代码 代码如下:


adb logcat "*:PRIORITY"

 

# example
adb logcat "*:W"

 

优先级:

V — 细则 (最低优先级)
D — 调试
I — 信息
W — 警告
E — 错误
F — 致命
S — 静默 (最高优先级,不会打印任何信息)

使用grep过滤

这个很像在Linux上使用管道命令一样,需系统支持

复制代码 代码如下:


adb logcat | grep "SEARCH_TERM"
adb logcat | grep "SEARCH_TERM_1\|SEARCH_TERM_2"

 

#example
adb logcat | grep "Exception"
adb logcat | grep "Exception\|Error"


清除日志块

 

使用来清除旧的日志

复制代码 代码如下:

adb logcat -c