文章目录
一、adb 是什么?
- Android Debug Bridge (adb) 是一种多功能命令行工具,可以和设备通信, 是一个客户端 - 服务器程序 . 简单来说就是 不仅可以操作手机 设备, 还可以用于 app 自动化测试. (操作安卓手机!!!)
二、adb 工作原理
- 是一个客户端-服务器 (C/S) 程序,包括三个组件:
- 一个客户端,它发送命令。可以通过发出 adb 命令从命令行终端调用客户端
- 一个守护进程 ( adb daemon adbd),它在设备上运行命令。守护程序在每个设备上作为后台进程运行。
- 一个服务端,它管理客户端和守护进程之间的通信,就是接受客户端的指令,把指令转发给移动设备,然后设备识别指令,做出响应, 把结果返回给客户端.
两条通道:客户端 向 服务端 发送指令、 服务端 和 手机端 (服务端会扫描当前所有设备,某一端口进行通信.
它通过扫描 5555 到 5585 范围内的奇数端口来定位模拟器,这是前 16 个模拟器使用的范围。当服务器找到一个 adb 守护进程 (adbd) 时,它会建立到该端口的连接。请注意,每个模拟器使用一对顺序端口——一个用于控制台连接的偶数端口和一个用于 adb 连接的奇数端口。例如:模拟器 1,控制台:5554、模拟器 1,adb:5555。 模拟器 2,控制台:5556、模拟器 2,adb:5557. 就是 连接到 adb 端口 5555 的模拟器与控制台监听端口 5554 的模拟器相同
总结 : 就是客服端 发送给 服务端 指令, 服务端去操作手机设备,执行结果返回给 服务端 , 服务端在返回给客户端.
三、连接手机设备、查看设备状态
模拟机、真机
真机: 选择开发者模式 —》usb 调试 机型不同, 设置不一样
开源模拟器: 模拟真机操作(某一真机的特定版本上开发的)、回归测试/功能测试验证等使用
四、 adb命令
命令组成: adb [-d | -e | -s 设备号 ] 具体命令
-d 当前唯一通过 usb 连接的 android 设备为命令目标
-e 指定当前唯一运行的模拟器为命令目标
-s 指定相应的设备为命令目标!!!
安装/卸载包. 只有一个设备,没有添加其他的 -e 等
.apk文件。 应用宝中下载
普通安装 : adb install <apk路径>. mac 直接找到文件拖拽到终端页面就是显示出路径
覆盖安装/代替安装 : adb install -r <apk路径>
卸载应用.彻底卸载: adb uninstall 包名
卸载应用 . 不删除应用文件,保留缓存数据 : adb uninstall -k 包名
通过 adb shall 进入到手机命令环境