一、什么是adb
全称是:Android Debug Bridge,即安卓调试桥,是安卓sdk的一个工具;
adb的B/S结构
adb工具是一个客户端-服务器的应用程序,包含三个方面:
1. client(客户端):运行在PC上。其实就是shell,用来发送命令给Server。发送命令时,首先检测PC上有没有启动Server,如果后台没有Server,则自动启动一个Server,然后将命令发送到Server,并不关心命令发送过去以后会怎样。
2. daemon(守护进程):一个以后台进程的形式运行于模拟器或设备上的守护程序(daemon)。
3. server(服务器端):在PC机上作为后台进程运行的服务器。该服务器负责管理客户端与运行模拟器或设备上的adb守护程序(daemon)之间的通信。
ADB Server检测USB接口何时连接或者移除设备,管理着adb client和adb daemon的通信。它维护着一个“已连接的设备的链表”,并且为每一个设备标记了一个状态:offline,bootloader,recovery或者online;Server一直在做一些循环和等待,以协调client和Server还有daemon之间的通信。
三者之间的通信
Daemon<—>Server<—>Client
当启动adb客户端时,客户端首先检测adb服务端进程是否运行,如果没有运行,则启动服务端。当服务端启动时,它会绑定到本地的TCP5037端口,并且监