我正在使用一台安卓平板通过USB端口与USB设备通信,但是该平板只有一个USB端口,因此我使用adb wifi作为我的调试工具。然而,当我通过WIFI连接adb时,连接不会保持长时间(通常只有几分钟),如何让adb wifi连接始终在线? 另一个问题是,是否可以使用USB HUB将平板与USB闪存驱动器和计算机连接,并保持adb运行? 非常感谢!
我正在使用一台安卓平板通过USB端口与USB设备通信,但是该平板只有一个USB端口,因此我使用adb wifi作为我的调试工具。然而,当我通过WIFI连接adb时,连接不会保持长时间(通常只有几分钟),如何让adb wifi连接始终在线? 另一个问题是,是否可以使用USB HUB将平板与USB闪存驱动器和计算机连接,并保持adb运行? 非常感谢!
在多次尝试失败后,我注意到打开“仅允许在充电模式下进行ADB调试”规范可以解决问题。它使设备在线并可通过WiFi访问ADB。您可以在“开发人员选项”部分找到它。
通过无处不在的研究和自己的开发一周以上,我发现了以下问题。
A1. 定期调用adb命令可以保持adb服务器在线。
A2. 在检查连接设备的wifi之前,请检查ADB服务器运行的wifi。Ping谷歌,如果连接良好,则ping到设备。
无线连接可能会自动断开,即使有时候有线连接也会断开。因此,在设备尚未连接时调用“adb connect ...”是必要的。您可以轻松地通过保存“adb devices> device.txt”并查询您的预期wifi是否在列表中来完成此操作。如果没有,请再次连接(在另一个线程中进行)。
A3. 这是因为通过TCP / IP连接,您的ADB服务器现在处于Time_Wait状态。上次连接被中断,下次连接现在已离线,因为上次连接没有完全关闭。您可以手动断开/连接设备的wifi,或重新启动TCPIP连接,例如“adb tcpip 5555” 如果要自动执行此操作,则必须以编程方式断开/连接设备的wifi。
当连接丢失时,adb devices
显示设备处于离线状态,如下所示:
prompt> adb devices
List of devices attached
192.168.1.1:5555 offline
然后使用adb disconnect IP
命令,接着使用adb connect IP
命令通常可以解决问题:
prompt> adb disconnect 192.168.1.1
disconnected 192.168.1.1
prompt> adb devices
List of devices attached
prompt> adb connect 192.168.1.1
connected to 192.168.1.1
prompt> adb devices
List of devices attached
192.168.1.1:5555 device
无需任何第三方应用程序即可通过 Wi-Fi 使用 adb。请按照以下步骤操作。
通过 USB 连接设备
打开终端并使用 adb devices
命令检查设备是否已列出
输入命令 adb tcpip 5555
并回车(或使用其他端口代替 5555)
拔掉 USB 电缆。您不再需要它了。
拿起您的 Android 手机并转到“设置/关于手机/状态”
检查 IP 地址部分。假设您的 IP 地址为 192.168.x.y
在终端中,输入命令 adb connect 192.168.x.y
现在,您已经通过 Wi-Fi 连接了设备。
您可以在 adb devices
中看到您的设备
享受吧!:)
adb tcpip 5555
的设备,因此我无法在回到办公桌时捕获logcat以调试发生的任何问题。我该如何防止这种情况发生? - Michaeladb kill-server
然后执行 adb start-server
。然后再次应用这些步骤。 - Berkay92这似乎是您的wifi出了问题。作为预防措施,只需保持终端开启,每当需要测试时,只需按“向上箭头”键即可回到先前运行的adb connect "<ip>"
命令。
所以,我正在使用Scrcpy和Adb无线连接到我的手机(用于开发Flutter应用程序),由于屏幕甚至不能通过Scrcpy --stay-awake命令保持唤醒状态。
我不得不更改锁定设置=>锁定屏幕=>睡眠,并将设置更改为永不休眠。
adb shell input keyevent 224
timeout 2
adb shell input keyevent 26
timeout 58
这将在每分钟打开显示器2秒钟。