解决:Adb connection Error:远程主机强迫关闭了一个现有的连接

本文讲述了在开发过程中遇到的AdbconnectionError,原因在于Windows环境下adb的限制。通过替换adb.exe文件,将最大句柄数从64提升到256,解决了手机进程过多导致的adb连接问题。
摘要由CSDN通过智能技术生成

解决:Adb connection Error:远程主机强迫关闭了一个现有的连接

提示错误信息

用模拟器和真机来调试程序的时候,eclipse的console总是出现如下的错误:
[2021-01-27 10:37:36 - DeviceMonitor] Adb connection Error:远程主机强迫关闭了一个现有的连接。
[2021-01-27 10:37:38 - DeviceMonitor] Connection attempts: 1
[2021-01-27 10:37:38 - DeviceMonitor] Connection attempts: 2

错误的原因

这是 DDMS 调用 adb 引发的。经过一番搜索,发现这是 Windows 环境下,adb 的一个限制,也可以说是 bug。当手机上同时运行的进程数大于 64 时, 就会引发 adb 奔溃。更深层次的原因,就是 Windows API 的 WaitForMultipleObjects 所支持的最大句柄数MAXIMUM_WAIT_OBJECTS,即 64。

解决方案

下载相应的adb.exe文件,用它替换掉你安卓上的sdk的platform/tools目录下面的adb.exe。这个问题就不会出现错误了,原理是把最大支持数改为了256个。我的解决方案是下载夜神模拟器,将夜神模拟器的adb.exe复制粘贴一份到安卓上的sdk的platform/tools目录下覆盖旧的adb.exe。至此问题得以解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值