ADB的常用命令

调试相关

1. 设备

    a. 列出设备及其id:adb devices

    b. 使用特定的设备:adb -s device-id

2. adb 服务

    a. 关闭服务:adb kill-server    

    b. 开启服务:adb start-server    

3. 重启

    a. 正常重启:adb reboot

    b. 重启到BootLoader(刷机模式):adb reboot bootloader

    c. 重启到recovery模式(恢复模式):adb reboot recovery

4. 查看进程

    a. 列出进程列表及其pid:adb shell ps

    b. 杀死指定pid的进程:adb shell kill pid

    c. 查看指定进程信息:adb shell ps -x pid

5. 查看service:adb shell service list

6. 查看系统当前内存使用情况:adb shell cat /proc/meminfo

    a. 查看指定报名应用内存使用情况:adb shell dumpsys meminfo package

 

设备应用管理

1. 安装apk:

    a. 安装:adb install xxx.apk

    b. 覆盖安装(保留缓存和数据):adb install -r xxx.apk

2. 卸载应用

    a. 卸载:adb uninstall package

    b. 卸载时保留数据和缓存目录:adb uninstall -k package

3. 查看设备应用

    a. 查看所有应用包名:adb shell pm list package

    b. 列出指定包名对应的apk路径:adb shell pm path packagename

    c. 有 apk 安装包的情况下,通过 aapt dump badging <apk路径> 查看

    d. 查看当前应用的包名和Activity

  查看当前应用的包名:adb shell dumpsys window w | findstr \/ |findstr name=

  查看当前的Activity:adb shell dumpsys window | findstr mCurrentFocus

 e.查看所有apk进程:adb shell ps

  查看特定apk进程(com.example.app 为应用的包名):adb shell ps | findstr com.example.app

 

文件管理

将电脑文件复制到设备sd卡上:adb push 电脑文件路径/sdcard

1. 设备文件复制到电脑上:adb pull /sdcard/text/txt 电脑文件路径

2. 删除:adb shell rm /sdcard/text.txt

    a. -f:强制删除文件不需要确认

    b. -r:递归删除文件夹内文件

    c. -i:删除文件前需要确认

3. 创建目录:adb shell mkdir -p /sdcard/temp/test

 -p递归创建目录

5. 创建文件:adb shell touch /sdcard/text.txt

6. 复制文件:adb shell cp /sdcard/text.txt /sdcard/test

7. 移动文件:adb shell mv /sdcard/1.txt /sdcard/2.text

 移动同一目录下文件相当于重命名文件

 

手机系统信息

1. 获取手机系统信息:adb shell "cat /system/build.prop | grep "product""

2. 获取手机系统版本:adb shell getprop ro.build.version.release

3. 获取手机系统api版本:adb shell getprop ro.build.version.sdk

4. 获取手机设备型号:adb -d shell getprop ro.product.model

5. 获取手机厂商名称:adb -d shell getprop ro.product.brand

6. 获取手机序列号

    adb get-serialno

    adb shell getprop ro.serialno 

7. 获取手机的IMEI(由于手机和系统的限制,不一定能获取到)

    adb shell dumpsys iphonesubinfo

    adb shell getprop gsm.baseband.imei

8. 获取手机的mac地址:adb shell cat /sys/class/net/wlan0/address

9. 获取手机存储信息:adb shell cat /proc.meminfo

10. 获取手机存储信息:adb shell df

    获取手机内部存储信息

    魅族:adb shell df /mnt/shell/emulated

    其他:adb shell df/data

    获取sdcard存储信息:adb shell df /storage/sdcard

11. 获取手机分辨率:adb shell "dumpsys window | grep mUnrestrictedScreen"

12. 获取手机物理密度:adb shell wm density

13. 获取devicename:adb shell cat /system/build.prop

 

logcat输出日志

1. 输出日志到手机指定目录:adb logcat -f /路径

    adb logcat -f / sdcard/zjdata.bredbaby/log/1.txt

    其中:1.txt是指定输出到该文档; sdcard/zjdata.bredbaby/log 是指定日志存储的地址。

    备注:指定的目录必须存在,否则会提示找不到地址

2. 把日志输出到电脑指定目录,如d:\test:adb logcat > d:\test\1.txt

3. 清除logcat内容:adb logcat -c

4. find过滤包名:adb logcat | find “包名” > 路径

    adb logcat | find "com.taobao.taobao" > E:/test.log

5. 过滤特定级别日志:adb logcat *:W   //显示所有优先级大于等于“warning”的日志

    使用V、D、I、W、E、F、S优先级标记进行过滤

    V —— Verbose 明细(最低优先级)

    D —— Debug 调试

    I —— Info 信息

    W —— Warn 警告

    E —— Error 错误

    F —— Fatal 严重错误

    S —— Silent 无记载(最高优先级,没有什么会被记载)

posted @ 2020-06-19 09:45  Shimmer~~  阅读(304)  评论(0)    收藏  举报