当前位置: 首页 > news >正文

ADB简介

一、什么是ADB

        ADB,全称Android Debug Bridge,即安卓调试桥接,是Android sdk中不可或缺的工具,主要用于管理模拟器或真实设备的状态。

        ADB分为三个部分:PC上的adb client,adb server和手机(也可能是PC上的模拟器)上的adb daemon。

这是一个多多连接的设计。即一台PC可以连接多个手机,一台手机也可以连接多个PC。

  • client(运行在pc端的adb client):

命令行程序”adb”用于从shell或脚本中运行adb命令。首先,“adb”程序尝试定位主机上的ADB服务器,如果找不到ADB服务器,“adb”程序自动启动一个ADB服务器。接下来,当设备的adbd和pc端的adb server建立连接后,adb client就可以向ADB servcer发送服务请求;

  • Server (运行在pc端的adb server):

ADB Server是运行在主机上的一个后台进程。它的作用在于检测USB端口感知设备的连接和拔除,以及模拟器实例的启动或停止,ADB Server还需要将adb client的请求通过usb或者tcp的方式发送到对应的adbd上;

  • demon (运行在设备端的常驻进程adb demon (adbd)):

程序“adbd”作为一个后台进程在Android设备或模拟器系统中运行。它的作用是连接ADB服务器,并且为运行在主机上的客户端提供一些服务;

daemon程序意思守护进程。通常在系统后台长时间运行,由于没有控制终端而无法与前台交互,daemon程序一般作为系统服务使用。daemon是静态的,就是某一程序,daemon运行后会提供某种服务,服务是动态的,是程序运行产生的进程。通常说的Linux守护进程就是指daemon或者服务。daemon的名称通常为相应的服务后加上一个d。如cron服务的daemon为crond,http服务的daemon为httpd。

二、ADB的工作原理

        当启动adb客户端时,客户端会首先检查adb服务是否已在运行。若未运行,则会启动服务器进程,该进程会与本地的TCP端口5037进行绑定,并开始监听来自adb的指令。所有adb客户端都通过5037端口与adb服务器进行数据交换。在服务器与设备建立连接的过程中,它会扫描5555至5585之间的奇数号端口来查找模拟器,但请注意,这个范围仅提供前16个模拟器的使用。一旦服务器发现adb的守护进程(即adbd),便会与之建立连接,从而能够处理来自各种adb客户端的命令。

http://www.dtcms.com/a/324662.html

相关文章:

  • 【redis初阶】--------Set 集合类型
  • Baumer高防护相机如何通过YoloV8深度学习模型实现道路坑洼的检测识别(C#代码UI界面版)
  • Linux操作系统从入门到实战(十六)冯诺依曼体系结构,操作系统与系统调用和库函数概念
  • API 接入终极指南:实时掌握京东商品动态
  • openpnp - 顶部相机如果超过6.5米影响通讯质量,可以加USB3.0信号放大器延长线
  • SpringAI报错:com.github.victools.jsonschema.generator.AnnotationHelper
  • 北京-4年功能测试2年空窗-报培训班学测开-第七十二天
  • Langchain入门:构建一个本地RAG应用
  • 《Go小技巧易错点100例》第三十七篇
  • 深度解析Linux设备树(DTS):设计原理、实现框架与实例分析
  • 阿里云ECS云服务器临时升级带宽方法
  • JP3-4-MyClub后台前端(三)
  • 胖虎的菜品
  • 一劳永逸解决Mayplotlib绘图中中文字体显示乱码的问题
  • 嵌入式软件分层架构的设计原理与实践验证(有限状态机理解及结构体封装理解)
  • 进度、质量、安全的关系随笔
  • 力扣面试150(52/150)
  • NY155NY170美光固态闪存NY175NY184
  • Zabbix优化指南:提升监控效率与性能
  • Pytorch深度学习框架实战教程-番外篇07-Pytorch优化器详解和实战指南
  • 机器学习——DBSCAN
  • 【人工智能99问】LLaMA的训练过程和推理过程是怎么样的?(22/99)
  • 【GPT入门】第43课 使用LlamaFactory微调Llama3
  • AI大模型提示词工程完全指南:从入门到精通
  • 【自用】JavaSE--IO流(二)--缓冲流、转换流、打印流、数据流、序列化流、IO框架
  • 硬件开发_基于STM32单片机的智能电梯系统
  • 【RocketMQ 生产者和消费者】- ConsumeMessageConcurrentlyService 并发消费消息
  • 自然语言处理入门路线-实践篇
  • AutoCAD 2026 的主要功能
  • 如何选择适合自己电商业务的 API?​