Android studio 有的设备连接不上adb, adb 的工作原理,调用软件包管理器 (pm)

 

adb 的工作原理

当您启动某个 adb 客户端时,客户端会先检查是否有 adb 服务器进程正在运行。如果没有,它将启动服务器进程。服务器在启动后会与本地 TCP 端口 5037 绑定,并监听 adb 客户端发出的命令 - 所有 adb 客户端均通过端口 5037 与 adb 服务器通信。

然后,服务器会与所有正在运行的设备建立连接。它通过扫描 5555 到 5585 之间(该范围供前 16 个模拟器使用)的奇数号端口查找模拟器。服务器一旦发现 adb 守护进程 (adbd),便会与相应的端口建立连接。请注意,每个模拟器都使用一对按顺序排列的端口 - 用于控制台连接的偶数号端口和用于 adb 连接的奇数号端口。例如:

模拟器 1,控制台:5554
模拟器 1,adb:5555
模拟器 2,控制台:5556
模拟器 2,adb:5557

依此类推

如上所示,在端口 5555 处与 adb 连接的模拟器与控制台监听端口为 5554 的模拟器是同一个。

服务器与所有设备均建立连接后,您便可以使用 adb 命令访问这些设备。由于服务器管理与设备的连接,并处理来自多个 adb 客户端的命令,因此您可以从任意客户端(或从某个脚本)控制任意设备。

 

调用软件包管理器 (pm)

官网说明adb:https://developer.android.google.cn/studio/command-line/adb

在 adb shell 中,您可以使用软件包管理器 (pm) 工具发出命令,以对设备上安装的应用软件包执行操作和查询。在 shell 中,语法如下:

    pm command

您也可以直接从 adb 发出软件包管理器命令,无需进入远程 shell。例如:

    adb shell pm uninstall com.example.MyApp

    

Android studio 有的设备连接不上adb。

 

网上很多都是端口占用,杀死再重启。或者升级abd版本,其实都不是核心问题。

当你的adb进不去,首先是去调试adb进程杀死再重启 ,不行的话,,换设备看看行不行,别的设备行的话,那核心就是那台不行的设备的驱存在问题。下载原驱动,重新安装,任何设备连接电脑都是有驱动支持的,初次连接 新的设备,在你的电脑右下角转圈圈的东西就是 在安装驱动的,由于你调试了很多设备,可能造成驱动识别混乱。下图就是下载驱动。

 

呵呵,今天有遇到了,2019.7.23   看图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZhangJiQun&MXP

等到80岁回首依旧年轻

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值