adb常用命令

ADB命令大全

adb即Android Debug Bridge,是Android开发中必不可少的调试工具。

安装和卸载apk

/** 安装APK文件:此命令需要先卸载apk再执行,否则执行失败。 */
adb install <apk文件路径>
/** 安装APK文件:如果已经安装了此APP,会进行替换安装操作(APP数据仍然存在), 否则直接进行安装*/
adb install -r <apk文件路径>
/** 卸载apk */
adb uninstall <包名>

搬运文件

/** 将电脑中的文件复制到Android设备 */
/** 设备路径:sdcard,比如我要copy文件到Download目录:sdcard/Download  */
adb push <本地文件路径> <设备路径>

/** 将Android设备中的文件复制到电脑 */
adb pull <设备路径> <本地文件路径>

启动/停止APP

/**运行指定APP,例子:adb shell am start me.hp.test.demo/me.hp.test.demo.MainActivity */
adb shell am start 包名/activity名

/** 停止指定APP */
adb shell am force-stop 包名

查看已连接的设备

adb devices

查看设备的分辨率

//查出的结果类似 1280x720
adb shell wm size

查看设备的密度(dpi)

adb shell wm density   //查出类似 480

重启设备

adb reboot

删除设备中的文件或者文件夹

$ adb shell su 
$ remount
$ cd /sdcard/  //进入系统内指定文件夹 
$ ls  //列表显示当前文件夹内容 
$ rm -r xxx   //删除名字为xxx的文件夹及其里面的所有文件 
$ rm xxx   //删除文件xxx 
$ rmdir xxx   //删除xxx的文件夹

adb抓取设备日志

adb logcat -v time > Documents/test.log

然后操作设备,日志都会被记录进test.log文件中,不过在这之前最好清空一下设备的日志,这样记录的日志就是你操作设备这段时间的。

adb清除日志

adb logcat -c

程序ANR崩溃,获取traces.txt日志文件

出现Application Not Responding的提示后,系统会将日志LOG写到data\anr\traces.txt文件

$ adb pull /data/anr/traces.txt

adb抓取dmesg信息

dmesg信息是Linux内核启动信息,常用于分析定位android系统相关问题,抓取dmesg信息指令如下:

adb shell dmesg > <文件保存路径>

比如:adb shell dmesg > dmesg.log ,那么信息就会保存进入dmesg.log文件。

查看android版本号以及SDK版本号

$ adb shell getprop ro.build.version.release //android版本号
$ adb shell getprop ro.build.version.sdk  //android sdk版本号

抓取设备的网络包

$ adb shell su
$ tcpdump -i any -p -s 0 -w /sdcard/capture.pcap
$ exit
$ adb pull /sdcard/capture.pcap <自己电脑路径>

从设备本身发起网络请求

$ adb shell 
$ curl http://ip:port/xxx.jsp

获取内存泄漏hprof文件

//生成文件
adb shell am dumpheap cn.gd.snm.snmcm /data/data/cn.gd.snm.snmcm/2.hprof
//将文件提取到电脑
adb pull /data/data/cn.gd.snm.snmcm/2.hprof

手动设置设备的时间

$ adb shell su
$ cat /data/property/persist.sys.timezone
//上面语句回车后,如果看到GMT在前面,则下面这句话不用执行
$ setprop persist.sys.timezone GMT
$ date -s "20180716.185630"     //设置时间
$ date      //查看当前时间

获取设备root权限(不一定成功)

$ adb root adb remount
$ adb shell
$ mount -o rw,remount /system
$ exit

//获取设备root权限后可删除系统应用
$ adb shell
$ cd system/app
$ rm -r <相关APP>
$ cd data/data
$ rm -r <相关APP>

获取设备的WIFI Mac地址

$ adb shell
$ cat /sys/class/net/wlan0/address

查看设备CPU使用率

$ adb shell
$ su
$ top

查看设备CPU信息(内核数)

$ adb shell
$ cat /proc/cpuinfo
$ /sys/devices/system/cpu

查看设备CPU架构

adb shell
//查看CPU架构执行状态
cat /proc/cpuinfo
//支持的架构
getprop|grep arm

比如我连接的设备支持的CPU架构如下:

ro.product.cpu.abilist的值表明当前系统所支持的所有的ABI类型。
ro.product.cpu.abilist32 / ro.product.cpu.abilist64的值表明当前系统所支持的32位和64位的ABI类型。


查看设备连接了哪些USB设备

$ adb shell
$ cat /proc/bus/input/devices    即可查看

$ lsusb 可以查看设备的vid 和 pid

用adb录制设备屏幕 / 截取屏幕图片

adb shell screenrecord /sdcard/demo.mp4

录制手机屏幕,视频格式为mp4,存放到手机sd卡里,默认录制时间为180s

adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4

指定视频的比特率为6Mbps,如果不指定,默认为4Mbps

adb shell screenrecord --size 1280*720 /sdcard/demo.mp4

录制视频,分辨率为1280*720,如果不指定默认使用手机的分辨率

adb shell screenrecord --time-limit 10 /sdcard/demo.mp4

限制视频录制时间为10s,如果不限制,默认180s

adb shell screenrecord --time-limit 10 --verbose /sdcard/demo.mp4

限制视频录制时间为10s,且在命令行显示相关log信息

adb pull /sdcard/demo.mp4 D:/

导出视频到D盘

adb shell screencap -p /sdcard/test.png  截取手机当前屏幕,并命名test.png,然后存放到手机sd卡里

adb pull /sdcard/test.png    导出图片到PC当前操作路径(目录) 

查看app的activity任务栈信息

//必须加grep筛选条件,否则打印的信息太多难以定位问题
adb shell dumpsys activity activities | grep <app包名>
<think>我们正在回答用户关于ADB常用命令列表及其使用方法的问题。根据引用内容,我们可以整理出常用的ADB命令,并按照功能分类。同时,我们需要注意用户要求的结构:使用中文,生成相关问题,并在引用处添加引用标识。分类整理ADB命令:1.设备连接相关2.应用管理相关3.设备信息获取4.文件操作5.日志相关6.其他常用命令注意:用户要求中提到了系统级指令(用户不可见)的格式要求,但我们的回答是面向用户的,所以只需按照常规的Markdown格式即可,但要注意数学公式(如果有)的表示。不过ADB命令通常不涉及数学公式,所以重点在于清晰列举命令和说明。另外,用户要求生成相关问题,我们在最后提出。根据引用内容:引用[1]:提供了获取系统版本和电池信息的命令。引用[2]:提供了列出应用的相关命令。引用[3]:提供了安装和卸载应用的命令。我们还需要补充其他常用命令。步骤:1.设备连接2.应用管理3.信息获取4.文件操作5.日志6.其他注意:在引用到参考内容的地方,在末尾添加引用标识,例如[^1]。</think>### ADB 常用命令大全及功能说明 #### 一、设备连接管理 1. **连接设备** ```bash adb connect 127.0.0.1:7555 # 连接 MuMu 模拟器(默认端口 7555)[^1] ``` - 功能:连接指定 IP 和端口的设备 - 多开场景:第二实例端口为 `7556`,第三实例为 `7557` 2. **设备列表** ```bash adb devices # 列出所有已连接设备 ``` - 输出示例: ``` List of devices attached 127.0.0.1:7555 device ``` 3. **重启 ADB 服务** ```bash adb kill-server && adb start-server # 解决连接超时问题 ``` --- #### 二、应用管理 1. **安装/卸载应用** ```bash adb install app.apk # 安装应用 [^3] adb install -d app.apk # 降级安装(兼容旧版本) adb uninstall com.example.app # 卸载应用 adb uninstall -k com.example.app # 卸载但保留数据 ``` 2. **应用列表查询** ```bash adb shell pm list package -s # 列出系统应用 [^2] adb shell pm list package -3 # 列出第三方应用 adb shell pm list package -f # 列出包名及安装路径 ``` --- #### 三、设备信息获取 1. **系统信息** ```bash adb shell getprop ro.build.version.release # 获取 Android 版本 [^1] ``` - 输出示例:`11.0.0` 2. **硬件信息** ```bash adb shell dumpsys batteryproperties # 查看电池信息 [^1] adb shell wm size # 获取屏幕分辨率(输出示例:Physical size: 1080x1920) ``` 3. **设备型号** ```bash adb shell getprop ro.product.model # 获取设备型号 ``` --- #### 四、文件操作 1. **文件传输** ```bash adb push local.txt /sdcard/ # 复制文件到设备 adb pull /sdcard/remote.txt . # 从设备复制文件到本地 ``` 2. **设备文件管理** ```bash adb shell ls /sdcard/ # 列出设备目录内容 adb shell rm /sdcard/file.txt # 删除设备文件 ``` --- #### 五、调试与日志 1. **日志抓取** ```bash adb logcat # 实时查看日志 adb logcat > log.txt # 保存日志到文件 ``` 2. **进入 Shell** ```bash adb shell # 进入设备命令行(可执行 Linux 命令) ``` --- #### 六、其他实用命令 1. **屏幕截图** ```bash adb exec-out screencap -p > screen.png # 截图保存到本地 ``` 2. **模拟输入** ```bash adb shell input tap 500 500 # 模拟点击坐标 (500,500) adb shell input swipe 500 1000 500 200 # 模拟滑动 ``` 3. **重启设备** ```bash adb reboot # 重启设备 ``` > ⚠️ **注意事项** > - 部分命令需设备开启 `USB 调试模式` > - 多设备时用 `-s 设备号` 指定目标设备(如 `adb -s 127.0.0.1:7555 shell`)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hepingdev

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值