美文网首页
adb原理之深度剖析

adb原理之深度剖析

作者: 行水坐云 | 来源:发表于2020-09-08 23:53 被阅读0次

    关键词:Android,MUMU,APP,ADB
    一、adb原理图

    adb原理图1.png
    adb原理图2.jpg

    adb相关的有三个端,分别是adb client 客户端,adb server 服务器,Daemon(adbd)守护进程。客户端和服务器存在于PC之中,守护进程存在于手机中。

    二、验证adb原理
    1)打开模拟器或者真机


    打开mumu.png

    2)连接mumu模拟器


    连接mumu.png
    3)分析
    注意到,第二步是我们打的第一个adb命令。
    通过tasklist查看到OS多了一个adb进程。再通过netstat查看到这个1184进程占用的端口是5037。根据adb原理图1,得知此adb是服务端。
    image.png

    通过windows任务管理器详细信息,得到此adb.exe是sdk platform-tools的adb.exe


    打开adb所在的位置.png
    sdk中adb.png
    但是此时并没有adb客户端。很有可能adb客户端把命令发给服务端后,客户端进程退出。服务端不会退出,处于监听状态(根据adb原理图2)
    就算是打adb devices同样,查不到adb客户端
    adb devices.png
    查看os adb进程.png

    为了保证adb不退出,我们打adb shell。

    adb shell.png
    这个时候,再次查看os adb进程发现多了一个6072进程。
    查看adb进程.png
    再次通过任务管理器 详细信息,发现还是sdk下的platform-tools的adb.exe
    任务管理器 详细信息.png
    sdk-adb.png
    !!!真相只有一个,原来所谓的adb服务端和客户端都是sdk下的adb.exe

    验证守护进程
    adb shell后使用netstat发现有一个273进程(adbd)占用5555端口,此进程即为守护进程。

    adbd.png
    PS:adb shell退出会话,再次查看adb进程,客户端进程退出,只有服务器处于监听状态,由此百分百确认,客户端发送命令完成后会自动退出。

    相关文章

      网友评论

          本文标题:adb原理之深度剖析

          本文链接:https://www.haomeiwen.com/subject/eersektx.html