1.ADB 是什么?
Adb的全稱為Android Debug Bridge:android調試橋梁,下圖為Android官方介紹:
Android的初衷是用adb這樣的一個工具來協助開發人員在開發android應用的過程中更快更好的調試apk,因此adb具有安裝卸載apk、拷貝推送文件、查看設備硬件信息、查看應用程序占用資源、在設備執行shell命令等功能;
2. ADB架構
ADB是一個C/S架構的應用程序,由三部分組成:
- 運行在pc端的adb client: 命令行程序”adb”用於從shell或腳本中運行adb命令。首先,“adb”程序嘗試定位主機上的ADB服務器,如果找不到ADB服務器,“adb”程序自動啟動一個ADB服務器。接下來,當設備的adbd和pc端的adb server建立連接后,adb client就可以向ADB servcer發送服務請求;
- 運行在pc端的adb server: ADB Server是運行在主機上的一個后台進程。它的作用在於檢測USB端口感知設備的連接和拔除,以及模擬器實例的啟動或停止,ADB Server還需要將adb client的請求通過usb或者tcp的方式發送到對應的adbd上;
- 運行在設備端的常駐進程adb demon (adbd): 程序“adbd”作為一個后台進程在Android設備或模擬器系統中運行。它的作用是連接ADB服務器,並且為運行在主機上的客戶端提供一些服務;
https://blog.csdn.net/zhonglunshun/article/details/78362439