ADB 原理(第二篇:证实adb client与adb server进程之间的通信)

本文详细解析了ADB工具的工作原理,包括其内部进程、通信方式及端口监听机制。探讨了ADBClient与ADBServer间的TCP连接,以及ADB在不同场景下的应用,如AndroidStudio的交互过程。

一、adb工具的工作原理图

解释一下这张图

1、中间的虚线表示PC与手机的分隔线,左侧是PC、右侧是手机

2、图示中的Client表示adb client进程、Server表示adb server进程(总得都有个名字,就像QQ、微信一样,只不过这里的名字比较简单粗暴……)

3、Client与Server之间的双箭头表示全双工的TCP连接(Network Socket,我猜测是为了兼容性,而未采用UDS,毕竟windows上没有UDS)

4、后台进程5037,指的是adb server进程监听着5037端口

5、图中右侧的adbd,表示手机中的adbd进程

6、5555-5585,指的是adbd作为守护进程(一直在内存中运行的进程,称为守护进程)监听扫描的几个端口号

二、adb工具的通信方式原理图(两种)

方式1:TCP连接

方式2:Usb cable

可以看到在PC端也有个USB端口的驱动程序在工作、Android端当然也有驱动程序在工作

三、证实下Mac下的adb通信

     1、adb演绎了进程间通信,为啥我的adb进程占用的端口是18??只代表占据,不代表监听(注意监听二字,进程启动后,可以设定监听哪一个端口),截图中是两个adb client进程的信息

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值