当新的 USB 连接/分离时,wifi 的 adb 连接被终止

Posted

技术标签:

【中文标题】当新的 USB 连接/分离时,wifi 的 adb 连接被终止【英文标题】:adb connection by wifi getting killed when a new USB attached/detached 【发布时间】:2017-02-27 13:51:48 【问题描述】:

我在平板电脑上使用android studio 进行开发。 平板电脑通过 wifi 连接到计算机,使用

adb connect <ip_andress>:5555

我的应用程序包含 USB 设备 attached/detached 的侦听器。 但不幸的是,当我将 USB 设备与平板电脑连接/断开连接时,adb 连接越来越killed,我无法在“adb devices”下看到该设备。

【问题讨论】:

你解决了吗? 【参考方案1】:

杀死的不是 adb-connection-by-wifi。只是 USB 枚举会影响sys.usb.* 系统属性,这在许多设备上会导致adbd 重新启动,无论它是在USB 还是tcpip 上使用。

grep "stop adbd" /init*rc 看看我的意思。

您可以注释掉那些stop adbd 行,或者在运行adb connect 命令之前断开USB 电缆。

【讨论】:

我无法编辑 init*rc 文件,因为我的设备没有植根。此外,断开 USB 后运行“adb connect”会导致“无法连接。连接被拒绝”。【参考方案2】:

我一直无法通过 wi-fi 将手机与计算机连接。

我已经放弃了。我按照所有说明和提示进行操作,但没有任何效果。

最后,我做了没人说该做的事。

我已将手机连接到电缆调制解调器本身提供的 WiFi 网络,而不是连接到路由器中包含的某些(不是全部)其他网络。

在家里我使用其中一个网络,因为我使用Deco Tp-Link router,它将信号传播到我的整个房子,但这个网络与 ADB 不兼容。它不会将其识别为属于同一网络。

在这之后,我使用here描述的正常程序。

a)USB线连接手机

b) 找到IP_Phone 依赖于手机中的系统。这里我使用SettingsAbout PhoneStatusIP address

c)Command Prompt (Windows) 或Terminal (Linux) 中运行以下adb 命令,其中IP_Phone 是上面提到的IP。通常adb.exe 是存储在计算机路径中的可执行文件。 adb 已经是 Android Studio 包中的 included。

adb tcpip 5555
adb connect IP_Phone 

d) 现在断开 USB 电缆并准备就绪。手机型号继续出现在 Android Studio 顶部的状态栏中。

-/-

最好的 wifi 是在 Cable Modem 中定义的。与我的路由器中定义的任何帐户不同,它会响应 ping 命令。

ping IP_Phone

【讨论】:

我知道,但是Android Studio文档的官方说明是关闭USBafter adb connect命令

以上是关于当新的 USB 连接/分离时,wifi 的 adb 连接被终止的主要内容,如果未能解决你的问题,请参考以下文章

循环使用 USB 电缆时,Android ADB-over-WiFi 仍会断开连接(?!?)

adb连接手机的两种方式

使用adb命令通过IP地址连接手机

Android - 设置adb的usb连接配置

ADB连接设备进行调试

无 USB 无线 ADB