ADB原理

Android Debug Bridge 调试桥 (adb) 他是一个非常强大的命令行工具,通过adb工具,你能够与自己的安卓设备进行通信。adb是基于c/s模式的程序,包括以下三个组件:
1.adb client(运行在pc机上);
2.adb server(运行在pc机上);
3.adb daemon(运行在手机上,这个是运行命令的组建);
连接的的端口范围是5555-5585,每一个adb连接,会启用两个端口。
ADB原理_第1张图片
adb client 运行在pc端,client实质上是shell,用来发送命令给server。发送命令是首先检测pc机上有没有启动server,如果没有启动,会自动启动一个server,然后将命令发送到server,并不关心命令发送过去以后会怎样。

adb server 运行在pc上的后台程序,目的是检测USB接口何时连接或者移除设备。通过发送来的adb命令从命令行终端去调用adb client段,每当发起一个adb命令的时候,就会开启一个client。sever一直在做一些循环和等待,来协调client与server进行通信(client与server进行通信是通过5037端口的)。

adb daemon (adbd后台程序),作为一个运行在模拟器/真实的android设备中的后台进程,并运行命令。作用是来连接到adb sever(通过usb或者tcp/ip),同时为client提供一些服务。

Client发送的指令也分为三种:
1.不需要经过Server处理就能成功的,如adb version,adb help。
2.需要和Server通讯,但不需要和Demon通讯的指令,如adb devices.
3.需要Daemon进行处理的命令。

你可能感兴趣的:(个人,adb,android)