我通过ADB将无线通过TCP连接到root的三星Android设备。按照this中的说明操作。
一切似乎都很好,但似乎有时Android Studio无法通过端口5555
连接,因此它将其更改为5037
。
这导致连接被拒绝,所以当我尝试使用adb connect 192.168.2.109:5555
连接时,我得到:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
unable to connect to 192.168.2.109:5555: Connection refused
解决这个问题:我已经将我的Android设备中的TCP端口更改为5037并且它完美运行
我的问题是:为什么Android Studio中的TCP端口会发生变化?
信息:操作系统:Ubuntu 18.04.1 LTS,Android Studio:3.1.4
一切似乎都很好但似乎有时Android Studio无法通过端口5555连接,因此它将其更改为5037。
这不是这里真正发生的事情。您对该过程的理解是完全错误的。
adbd
守护程序,在每个设备或模拟器实例中作为后台进程运行。adb
服务器,在您的开发机器上作为后台进程运行。服务器处理多路复用并管理adb
客户端和adb
守护进程之间的整体通信。adb
客户端(与adb
服务器相同的二进制文件),也可以在您的开发机器上运行。adb tcpip <PORT>
命令更改设备上adbd
守护程序的配置。 adb connect <IP>:<PORT>
命令告诉adb
服务器通过TCPIP网络而不是默认的USB连接连接到远程adbd
守护进程。
最后* daemon not running. starting it now on port 5037 *
消息指的是本地adb
服务器实例正在启动。端口5037
用于adb
客户端和adb
服务器之间的通信,它与adb tcpip
或adb connect
命令指定的端口无关。
那么为什么Android Studio中的TCP端口会发生变化?问题没有答案,因为Android Studio没有改变任何东西。从unable to connect to 192.168.2.109:5555
你可以看到它确实试图按照指示使用5555
端口。