在Android设备上拒绝Http连接



我在通过设备上运行的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。对我来说,这似乎不是同一个问题。

请帮帮我!

提前感谢

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

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

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

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

我也遇到了同样的问题,我的答案是防火墙阻止了所有来自外部的请求,你可以通过暂时关闭防火墙来解决这个问题。连接被拒绝的其他伪可能原因:-你的手机连接到了另一个wifi(可能你忘了更换网络)-清理/重建项目(不在您的情况下)-清单中的Internet权限(不适用于您)-错误的url请求(localhost或127.0.0.1,而不是真实的机器ip,例如:192.168.0.101)

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

最新更新