目录
介绍
adb全称为 Android Debug Bridge(Android调试桥),是 Android SDK 中提供的用于管理Android 模拟器或真机的工具。
adb是一种功能强大的命令行工具,可让PC端与 Android 设备进行通信。用adb 命令可执行各种操作,如安装和调试 App。
组成
adb采用了客户端-服务器(C/S)模型,包括3个部分,如下图:
adb 的 Client:当 adb运行在计算机上时,我们可以在命令行中通过 adb 命令来调用adb的客户端(Client)。Client本质上就是 Shell,它可以发送命令给 Server。
Client发送命令时,首先会检测PC上有没有启动Server,如果没有启动Server,则会自动启动一个Server,然后将命令发送到Server。
adb的Server:运行在计算机后台的进程,用于管理客户端与运行在模拟器或真机上的守护进程通信。
adb的 daemon:守护进程作为一个后台进程在Android设备或模拟器系统中运行,它的作用是连接 adb 服务端,并且为运行在主机上的 adb 客户端提供一些服务。
启用adb调试
Android 系统的移动设备(如手机)可以通过USB连接到adb,连接时需要在移动设备的系统设置中启用USB 调试(位于手机的开发者选项下),启动USB 调试后,设备上的adb守护进程就会被启动,adb服务端才可以和 Android 设备建立连接。
如果希望计算机连接 Android 模拟器或者真机,需要先打开 USB 调试开关。
(1)模拟器,不需要手动设置 USB 调试开关,默认就是打开的状态。
(2)真机设备,需要手动打开 USB 调试开关。
首先需要在计算机上安装Android 手机驱动,然后打开移动设备的设置应用,进入关于页面,然后开启 USB 调试模式
常用命令
ADB(Android Debug Bridge)是一个通用命令行工具,允许您与连接的Android设备进行通信。它提供了各种设备交互功能,如安装和调试应用程序、管理文件、执行shell命令等。以下是一些常用的ADB命令:
连接设备
adb devices:列出所有通过USB或网络连接的设备。
adb get-state:查看设备的连接状态。
adb connect <device_ip>:<port>:连接到网络上的设备。
版本信息
adb version:查看ADB工具的版本信息。
安装应用
adb install <path_to_apk>:在设备上安装一个APK文件。
adb shell pm list packages:查看设备上安装的所有应用包名。
adb install -r <path_to_apk>:重新安装应用并保留其数据。
卸载应用
adb uninstall <package_name>:卸载指定包名的应用程序。
adb uninstall -k <package_name>:卸载应用程序但保留其数据和缓存目录。
adb shell pm clear [包名]:清除指定应用的数据与缓存。
文件操作
adb push <local> <remote>:将本地文件复制到设备。
adb pull <remote> [<local>]:从设备复制文件到本地。
日志查看
adb logcat:查看设备的实时日志信息。
adb logcat -v time:打印带有时间戳的日志详情。
adb logcat -c:清除设备上的日志信息。
adb logcat > [文件路径]:将日志信息导出到本地文件。
adb bugreport > [文件路径]:生成并导出设备的bug报告。
屏幕截图和录制
adb shell screencap -p > screen.png:捕捉设备屏幕并保存为图片。
adb shell screenrecord <filename>.mp4:开始录制设备屏幕。
设备重启
adb reboot:重启设备。
adb reboot bootloader:重启进入bootloader模式。
adb reboot recovery:重启进入recovery模式。
端口转发
adb forward tcp:<host_port> tcp:<device_port>:将主机端口转发到设备端口。
Shell命令
adb shell:启动交互式shell会话。
adb shell <command>:在设备上执行单个shell命令。
调试相关
adb bugreport:生成并返回设备的bug报告。
设置属性
adb shell setprop <property> <value>:设置系统属性。
设备信息查询
adb shell getprop ro.build.version.release:获取设备的Android版本号。
adb shell cat /proc/cpuinfo:查看设备的CPU信息。
adb shell cat /proc/meminfo:查看设备的内存信息。
adb shell cat /sys/class/net/wlan0/address:查看设备的MAC地址(Wi-Fi)。
获取帮助
adb help:显示命令的帮助信息。
模拟输入
adb shell input text [文本]:模拟输入文本到设备。
adb shell input keyevent [事件代码]:模拟按键事件。
adb shell input tap [x轴坐标] [y轴坐标]:模拟点击屏幕上的指定坐标。
adb shell input swipe [起始x] [起始y] [结束x] [结束y] [持续时间]:模拟屏幕滑动操作
这些命令覆盖了ADB的主要功能,适用于日常的设备管理、应用调试、日志分析等多种场景。请注意,在使用某些命令(如adb root)时,可能需要设备的root权限或特定的解锁状态。同时,为了确保命令的正确执行,建议在执行前仔细核对设备状态、命令格式和参数。
阅读后若有收获,不吝关注,分享,在看等操作!!!