前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ADB的基本语法及常用命令

ADB的基本语法及常用命令

作者头像
越陌度阡
发布2024-05-24 15:11:56
880
发布2024-05-24 15:11:56
举报

学习网址

ADB命令的基本语法如下:

adb [-d|-e|-s <serialNumber>] <command>

如果有多个设备/模拟器连接,则需要为命令指定目标设备。

参数及含义如下:

常用命令如下:

1. 启动ADB服务

adb start-server

2. 停止ADB服务

adb kill-server

3. 指定ADB服务的网络端口

adb -P <port> start-server

默认端口为5037

4. 查询已连接设备/模拟器

adb devices

输出示例:

List of devices attached

cf264b8f device

emulator-5554 device

10.129.164.6:5555 device

输出格式为 [serialNumber] [state],serialNumber即我们常说的SN,state有如下几种:

offline 表示设备未连接成功或无响应;

device 设备已连接。注意这个状态并不能标识Android 系统已经完全启动和可操作,在设备启动过程中设备实例就可连接到ADB,但启动完毕后系统才处于可操作状态;

no device 没有设备/模拟器连接;

常见异常输出:

1. 没有设备/模拟器连接成功;

List of devices attached

2. 设备/模拟器未连接到ADB或无响应;

List of devices attached

cf264b8f offline

5. 无线连接(需要借助USB 线)

除了可以通过USB 连接设备与电脑来使用ADB,也可以通过无线连接,虽然连接过程中也有需要使用USB 的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱USB 连接线的限制了。

操作步骤:

1. 将Android 设备与要运行ADB的电脑连接到同一个局域网,比如连到同一个WiFi;

2. 将设备与电脑通过USB 线连接;

应确保连接成功,可运行adb devices看是否能列出该设备。

3. 让设备在5555 端口监听TCP/IP 连接;

adb tcpip 5555

4. 断开USB 连接;

5. 找到设备的IP 地址;

一般能在 wifi信息找到。

6. 通过IP 地址连接设备;

adb connect <device-ip-address>

这里的<device-ip-address>就是上一步中找到的设备IP地址。

7. 确认连接状态;

adb devices

如果能看到 <device-ip-address>:5555 device 说明连接成功。

如果连接不了,请确认Android设备与电脑是连接到了同一个WiFi,然后再次执行adb connect <device-ip-address>那一步。

如果还是不行的话,通过adb kill-server重新启动adb然后从头再来一次试试。

8. 断开无线连接;

adb disconnect <device-ip-address>

6. 无线连接(无需借助USB 线)

注:需要root 权限

上面是官方文档里介绍的方法,需要借助于USB 数据线来实现无线连接。

既然我们想要实现无线连接,那能不能所有步骤下来都是无线的呢?答案是能的。

1. 在Android 设备上安装一个终端模拟器;

已经安装过的设备可以跳过此步。我使用的终端模拟器下载地址是:[Terminal Emulator for Android Downloads]

2. 将Android 设备与要运行ADB的电脑连接到同一个局域网,比如连到同一个WiFi;

3. 打开Android 设备上的终端模拟器,在里面依次运行命令;

su

setprop service.adb.tcp.port 5555

4. 找到Android 设备的IP 地址;

一般能在「设置」-「关于手机」-「状态信息」-「IP地址」找到,也可以使用下文里[查看设备信息- IP地址]一节里的方法用adb命令来查看。

5. 在电脑上通过adb 和IP 地址连接Android 设备;

adb connect <device-ip-address>

这里的<device-ip-address>就是上一步中找到的设备IP地址。

如果能看到connected to <device-ip-address>:5555这样的输出则表示连接成功。

有的设备,比如小米5S + MIUI 8.0 + Android 6.0.1 MXB48T,可能在第5 步之前需要重启adbd 服务,在设备的终端模拟器上运行:

restart adbd

如果restart 无效,尝试以下命令:

stop adbd

start adbd

7. 应用管理

7.1. 查看应用列表

adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]

7.2. 安装APK

adb install [-l -r -t -s -d -g] <path_to_apk>

Success代表安装成功,Failure表示安装失败。

实际是分三步完成:

1. push apk 文件到/data/local/tmp;

2. 调用pm install 安装;

3. 删除 /data/local/tmp 下的对应apk 文件;

所以,必要的时候也可以根据这个步骤,手动分步执行安装过程。

7.3. 卸载应用

adb uninstall [-k] <packagename>

命令示例:

adb uninstall com.centent.mm

表示卸载微信

7.4. 清除应用数据与缓存

adb shell pm clear <packagename>

<packagename> 表示应用名包,这条命令的效果相当于在设置里的应用信息界面点击了「清除缓存」和「清除数据」。

命令示例:

adb shell pm clear com.qihoo360.mobilesafe

表示清除360 手机卫士的数据和缓存。

7.5. 查看前台Activity

adb shell "dumpsys activity | grep mResumedActivity"

安卓版本不同使用的命令有所差异。

输出示例:

mResumedActivity: ActivityRecord{331d51f u0 com.tencent.mm/.ui.LauncherUI t1769}

其中的 com.tencent.mm/.ui.LauncherUI 就是当前处于前台的Activity。

7.6. 查看正在运行的Services

adb shell dumpsys activity services [<packagename>]

<packagename> 参数不是必须的,指定 <packagename> 表示查看与某个包名相关的Services,不指定表示查看所有Services。

<packagename>不一定要给出完整的包名,比如运行adb shell dumpsys activity services org.mazhuang,那么包名org.mazhuang.demo1、org.mazhuang.demo2等相关的Services都会列出来。

7.7. 查看应用详细信息

adb shell dumpsys package <packagename>

<packagename> 表示应用包名。

输出中包含很多信息,包括Activity Resolver Table、Registered ContentProviders、包名、userId、安装后的文件资源代码等路径、版本信息、权限信息和授予状态、签名版本信息等。

7.8. 查看应用安装路径

adb shell pm path <packagename>

输出应用安装路径

输出示例:

package:/data/app/ecarx.weather-1.apk

8. 与应用交互

adb shell am <command>

8.1. 启动应用/调起Activity

adb shell am start -n Activity

8.2. 调起Service

adb shell am startservice -n Service

8.3. 停止Service

adb shell am stopservice [options] <INTENT>

8.4. 强制停止应用

adb shell am force-stop 包名

9. 文件管理

9.1. 复制设备里的文件到电脑

adb pull <设备里的文件路径> [电脑上的目录]

9.2. 复制电脑里的文件到设备

adb push <电脑上的文件路径> <设备里的文件名>

注意:后边的是设备上的文件名

10. 模拟按键

adb shell input keyevent 键值

11. 模拟输入文本

adb shell input text 英文文本

输入文本时只能输入英文文本或是拼音,需要结合确定键或是回车键才能将想要输入的内容填进输入框里。

12. 模拟滑动

adb shell input swipe x1 y1 x2 y2 time

13. 模拟点击

adb shell input tap x y

14. 查看设备信息

14.1. 查看设备型号

adb shell getprop ro.product.model

14.2. 查看电池状况

adb shell dumpsys battery

14.3. 查看屏幕分辨率

adb shell wm size

如果使用命令修改过:

Physical size: 1080x1920

Override size: 480x1024

14.4. 查看屏幕密度

adb shell wm density

14.5. 显示屏参数

adb shell dumpsys window displays

14.6. 安卓ID

adb shell settings get secure android_id

14.7. IMEI(设备ID)

adb shell dumpsys iphonesubinfo

14.8. Android 系统版本

adb shell getprop ro.build.version.release

14.9. IP 地址

adb shell ifconfig | grep Mask

14.10. WIFI

adb shell ifconfig wlan0

14.11. Mac 地址

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

14.12. CPU 信息

adb shell cat /proc/cpuinfo

14.13. 内存信息

adb shell cat /proc/meminfo

15. 修改手机配置

15.1. 修改分辨率

adb shell wm size 480x1024

表示将分辨率修改为480px * 1024px

15.2. 恢复原分辨率

adb shell wm size reset

15.3. 修改屏幕密度

adb shell wm density 160

表示将屏幕密度修改为160DPI

15.4. 恢复原屏幕密度

adb shell wm density reset

15.5. 修改显示区域

adb shell wm overscan 0,0,0,200

四个数字分别表示距离左、上、右、下边缘的留白像素,以上命令表示将屏幕底部200px 留白。

15.6. 恢复原显示区域

adb shell wm overscan reset

16. 实用功能

16.1. 屏幕截图

adb exec-out screencap -p > image.png

将屏幕截图存到ADB目录下,名称为image.png

16.2. 录制屏幕

adb shell screenrecord /sdcard/video.mp4 需要停止时按Ctrl+C,默认录制时间和最长录制时间都是180秒。

如果需要将录制的视频导出到电脑: adb pull /sdcard/video.mp4

16.3. 重启手机

adb reboot

16.4. 检测手机是否root

adb shell

此时命令行提示符是$则表示没有root权限,是#则表示已root。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 启动ADB服务
  • 2. 停止ADB服务
  • 3. 指定ADB服务的网络端口
  • 4. 查询已连接设备/模拟器
  • 5. 无线连接(需要借助USB 线)
  • 6. 无线连接(无需借助USB 线)
  • 7. 应用管理
    • 7.1. 查看应用列表
      • 7.2. 安装APK
        • 7.3. 卸载应用
          • 7.4. 清除应用数据与缓存
            • 7.5. 查看前台Activity
              • 7.6. 查看正在运行的Services
                • 7.7. 查看应用详细信息
                  • 7.8. 查看应用安装路径
                  • 8. 与应用交互
                    • 8.1. 启动应用/调起Activity
                      • 8.2. 调起Service
                        • 8.3. 停止Service
                          • 8.4. 强制停止应用
                          • 9. 文件管理
                            • 9.1. 复制设备里的文件到电脑
                              • 9.2. 复制电脑里的文件到设备
                              • 10. 模拟按键
                              • 11. 模拟输入文本
                              • 12. 模拟滑动
                              • 13. 模拟点击
                              • 14. 查看设备信息
                                • 14.1. 查看设备型号
                                  • 14.2. 查看电池状况
                                    • 14.3. 查看屏幕分辨率
                                      • 14.4. 查看屏幕密度
                                        • 14.5. 显示屏参数
                                          • 14.6. 安卓ID
                                            • 14.7. IMEI(设备ID)
                                              • 14.8. Android 系统版本
                                                • 14.9. IP 地址
                                                  • 14.10. WIFI
                                                    • 14.11. Mac 地址
                                                      • 14.12. CPU 信息
                                                        • 14.13. 内存信息
                                                        • 15. 修改手机配置
                                                          • 15.1. 修改分辨率
                                                            • 15.2. 恢复原分辨率
                                                              • 15.3. 修改屏幕密度
                                                                • 15.4. 恢复原屏幕密度
                                                                  • 15.5. 修改显示区域
                                                                    • 15.6. 恢复原显示区域
                                                                    • 16. 实用功能
                                                                      • 16.1. 屏幕截图
                                                                        • 16.2. 录制屏幕
                                                                          • 16.3. 重启手机
                                                                            • 16.4. 检测手机是否root
                                                                            领券
                                                                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档