Android Socket:java.net.SocketException:没有到主机的路由

And*_*ast 6 sockets android tcpclient

我正在尝试从Android设备连接(通过TCP)到我的机器上运行的服务器.我有android.permission.INTERNET我的清单文件:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Run Code Online (Sandbox Code Playgroud)

我能够使用模拟器进行连接,但是从设备尝试会抛出错误:
Android Socket: java.net.SocketException: No route to host

谁能请帮忙.

Har*_*man 15

在我的Android设备上禁用wifi,然后重新启用它,它工作.


Tor*_*rid 6

您的192.168.1.114地址是路由器为您的PC分配的(动态)DHCP地址.因此,模拟器可以看到它.

但是,根据您的WiFi设置方式,Android可能位于不同的路由器/子网上,无法看到192.168.1.114.您可以通过在Android浏览器的地址栏中键入192.168.1.114来检查.

如果您的Android看不到192.168.1.114,那么您必须更改路由器上的路由规则以使其可见,或者为其添加DNS查找.