ADB,全称Android Debug Bridge(安卓调试桥),是一个连接Android设备与计算机之间的重要桥梁。以下是对ADB的详细介绍:
一、ADB的基本功能
ADB主要提供以下几个方面的支持:
-
设备连接与管理:ADB能够识别并连接已开启调试模式的Android设备,无论是模拟器还是真实设备。通过ADB,开发者可以方便地查看已连接的设备列表,并进行设备的管理。
-
应用安装与卸载:ADB支持将APK文件安装到Android设备上,同时也支持卸载已安装的应用。这为开发者提供了便捷的测试环境,使得应用的安装和卸载过程不再依赖于设备本身的操作。
-
文件传输:ADB支持在Android设备与计算机之间传输文件,包括从设备导出文件到计算机,以及将计算机上的文件导入到设备中。这一功能在开发和测试过程中非常有用,可以方便地获取设备的日志文件、截图等信息。
-
Shell命令执行:ADB提供了对Android设备shell的访问权限,开发者可以在计算机上通过ADB执行各种shell命令,以获取设备的状态信息、修改系统设置等。
二、ADB的工作原理
ADB采用客户端-服务器架构,包括三个主要部分:
-
客户端:运行在开发者的计算机上,用于发送ADB命令。
-
服务器:同样运行在开发者的计算机上,用于管理客户端与设备端之间的通信。
-
守护进程(adbd):运行在Android设备上,用于接收并执行来自ADB服务器的命令。
当开发者在计算机上执行ADB命令时,客户端会将命令发送给服务器,服务器再将命令转发给设备的守护进程执行。执行结果会通过相同的路径返回给开发者。
三、ADB的下载与安装
1.下载
Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Linux版本:https://dl.google.com/android/repository/platform-tools-latest-linux.zip
2.解压配置环境变量
3.adb连接雷电模拟器
前提:安装了雷电模拟器,并且雷电模拟器的调试模式已经开启
进入雷电模拟器的安装文件夹,打开cmd命令
启动adb服务:
adb start-server
成功启动后,连接雷电模拟器:
adb connect 127.0.0.1:5555
如果出现这个错误:adb.exe: more than one device/emulator
是由于有多个设备或模拟器,这时候就需要指定设备的序列号:
adb -s 127.0.0.1:5555 shell
四、常用adb指令
一、设备连接管理
查看连接的设备
该命令用于列出当前通过ADB连接的所有Android设备。如果设备已连接并启用了USB调试,它将显示在列表中。
adb devices
通过IP地址连接设备
首先,需要将设备设置为通过TCP/IP进行ADB连接。然后,使用adb connect
命令通过指定的IP地址和端口连接到设备。这通常用于无线调试。
adb tcpip 5555
adb connect <设备IP>:<端口>
断开设备连接
使用此命令断开与指定设备的连接。
adb disconnect <设备>
二、应用管理
安装应用
将指定的APK文件安装到设备上。如果设备已安装该应用且希望保留其数据和缓存,可以使用-r
选项进行重新安装。
adb install <APK路径>
卸载应用
卸载设备上指定的应用。如果希望保留应用的数据和缓存,可以使用-k
选项。
adb uninstall <应用包名>
清除应用数据与缓存
清除设备上指定应用的数据和缓存。
adb shell pm clear <应用包名>
查看应用列表
列出设备上安装的所有应用包名。通过添加-3
选项,可以仅列出第三方应用包名。
adb shell pm list packages
启动应用
启动设备上指定的应用活动。需要知道应用的包名和活动的完整名称。
adb shell am start -n <应用包名>/<活动名>
强制停止应用
强制停止设备上指定的应用。
adb shell am force-stop <应用包名>
三、文件管理
复制文件到设备
将本地文件复制到设备上的指定路径。
adb push <本地文件路径> <设备文件路径>
从设备复制文件
从设备上的指定路径复制文件到本地。
adb pull <设备文件路径> <本地文件路径>
四、日志管理
查看日志
实时查看设备的日志输出。可以使用Ctrl+C停止查看。
adb logcat
清除日志缓冲区
清除设备的日志缓冲区,以便获取新的日志信息。
adb logcat -c
将日志保存到文件
将设备的日志输出保存到指定的文件中,并包含时间戳。
adb logcat -v time > <日志文件路径>
五、屏幕截图与录制
屏幕截图
截取设备的屏幕并保存到本地文件中。
adb exec-out screencap -p > <截图文件路径>
屏幕录制
开始录制设备的屏幕。需要指定录制文件的路径和名称。
adb shell screenrecord <录制文件路径>
六、系统信息查看
查看设备型号
获取设备的型号信息。
adb shell getprop ro.product.model
查看Android系统版本
获取设备的Android系统版本信息。
adb shell getprop ro.build.version.release
查看设备IP地址
查看设备的网络接口配置,包括IP地址。
adb shell ifconfig
七、其他实用命令
-
重启手机
adb reboot
重启连接的Android设备。
-
进入设备Shell环境
adb shell
进入设备的Shell环境,以便执行更多高级命令。
-
设置代理
adb shell setprop system.net.http.proxy <host>:<port>
为设备设置HTTP代理。
-
运行Monkey测试
adb shell monkey <事件数量>
生成随机用户事件,用于对设备进行压力测试。