1

我在通过设备上运行的 android 应用程序连接到服务器时遇到问题。我可以设法在模拟器上连接服务器,但在设备上它给出了 http 连接被拒绝错误。

07-08 09:53:27.125: W/System.err(8958): org.apache.http.conn.HttpHostConnectException: Connection to http://xx.xx.xx.xxx:8080 refused

我在另一台笔记本电脑上设置了服务器,并且服务器以无线方式连接到大学网络,我正在尝试通过位于同一网络上的设备上的应用程序连接到服务器。

我不明白的是在不同的计算机上连接模拟器上的服务器没有问题,当我在实际设备上测试它时会出现连接失败。

我已经搜索过这个问题,但它们通常与 IP 地址问题有关,例如 localhost、127.0.0.1 或 10.0.0.2。对我来说,这似乎不是同一个问题。

请帮帮我!

提前致谢

4

4 回答 4

3

外部世界可以访问该 IP 地址吗?

只是猜测:我认为您使用的 IP 地址可能已被保留。它在模拟器中工作,因为您仍在网络中(可能在您的办公室中)。当您使用真实设备离开网络时,它不起作用。

于 2013-07-08T09:29:06.613 回答
3

由于您在模拟器中运行应用程序,这是一个虚拟机,localhost127.0.0.1指向模拟器本身。

要访问您机器的网络接口,您需要使用 IP 地址10.0.2.2

于 2014-02-09T18:15:46.437 回答
1

我遇到了同样的问题,我的答案是防火墙阻止了来自外部的所有请求,您可以通过临时关闭防火墙来解决此问题。其他可能导致连接被拒绝的虚拟原因:-您的手机连接到不同的 wifi(可能您忘记更改网络)-清理/重建项目(不是您的情况)-清单的 Internet 许可(不是您的情况) - 错误的 url 请求(localhost 或 127.0.0.1 而不是真机 ip 例如:192.168.0.101)

于 2014-09-23T20:37:31.983 回答
0

如果其他人的计算机可以打开,您的 IP 将被禁止访问该页面。只有您的 IP 无法打开,因为该页面阻止了您的 IP

于 2013-09-30T05:50:30.347 回答