通过wifi将Android客户端连接到Java servlet

通过wifi将Android客户端连接到Java servlet,java,android,servlets,android-wifi,Java,Android,Servlets,Android Wifi,我遵循本教程来实现这一点: 我已经启动并运行了服务器,并且可以在浏览器中打开它的localhost链接。但是,当我在Nexus 5上运行Android应用程序时,出现以下错误: 11-26 01:34:46.501 1092-1340/com.example.nav.wificlient D/Exception:java.net.ConnectException:无法连接到/10.0.2.2端口8080:连接失败:eHostUnach没有到主机的路由 11-26 01:35:29.171 109

我遵循本教程来实现这一点:

我已经启动并运行了服务器,并且可以在浏览器中打开它的localhost链接。但是,当我在Nexus 5上运行Android应用程序时,出现以下错误:

11-26 01:34:46.501 1092-1340/com.example.nav.wificlient D/Exception:java.net.ConnectException:无法连接到/10.0.2.2端口8080:连接失败:eHostUnach没有到主机的路由

11-26 01:35:29.171 1092-1557/com.example.nav.wificlient D/Exception:java.net.ConnectException:无法连接到/10.0.2.2端口8080:连接失败:ETIMEDOUT连接超时

我的运行服务器程序的笔记本电脑和我的手机都连接到大学校园内的同一个名为eduroam的网络。我确保我的防火墙设置没有阻止笔记本电脑上的传入连接


我想知道是否校园网设置以某种方式阻止了这一点…但我不确定。关于如何缩小可能出现的问题,您有什么想法吗?

10.0.2.2是模拟器直接解释的唯一地址,用于引用运行模拟器的机器。这很有用,因为localhost只需引用仿真器本身

由于您不是在模拟器上运行android应用程序,而是在实际设备上运行,因此您需要更改应用程序,使其连接到托管服务器的计算机的本地IP,而不是连接到10.0.2.2

有关更多信息,请参阅