Android "localhost"套接字在没有数据连接时失败?

标签 android sockets

我正在设计一个需要在本地设备上使用网络服务器的 Android 应用程序。为此,我一直在尝试一些不同的服务器。目前我没有编写任何代码或在模拟器中运行任何东西,只是在我的实际手机上玩弄服务器,我观察到一些奇怪的行为。

每当我尝试连接到本地网络服务器时,如果我关闭了 WIFI,HTTP 请求就会失败。如果我打开 WIFI,它会成功。 根据我使用的地址,我得到不同的结果:使用 localhost 或 127.0.0.1,当 WIFI 关闭时,我连接被拒绝;使用当前的 10.X.Y.Z 地址我会超时。当 WIFI 打开时,这两个地址都有效。

我已经用 xWS、PAW 和 i-Jetty 尝试过这个:行为是一致的。 WIFI 开启,我可以连接到本地网络服务器; WIFI 关闭,我不能。 我在 Samsung Galaxy S (GT-I9000) 上使用 Android 2.3.3 上的默认“Internet”浏览器。

有人知道这是为什么吗?这是一个简单的问题,我需要更改某处的设置,还是发生了什么?

干杯,

/乌菲

最佳答案

您可以更改网络服务器连接到的网络接口(interface)吗? 默认设置可能类似于 eth0wlan0,如果您将其更改为 lo 它可能会起作用。

关于Android "localhost"套接字在没有数据连接时失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6679833/

相关文章:

java - 在java中使用套接字的本地客户端的ID

android - 使 View 宽度 wrap_content,但重量不超过 0.5

android - 关于 PhoneGap 中 FileTransfer() 下载的问题

java - 如何显示当前日期?安卓应用程序

java - 如何读取套接字流中接收器上的字节(java)

java - TCP 套接字客户端将输出写入本地主机的速度很慢

java - 未经授权获取 field 详细信息(Foursquare)

java - 将从麦克风获取的频率与已知频率进行比较

java - 是什么导致了我的 java.net.SocketException : Connection reset?

java - 如何在socket编程中制作多条消息?