What is localhost for Android?
Android设备的"本地主机"地址是什么?
我正在同一客户端上使用客户端和服务器测试程序。
SERVER_IP ="http://localhost"和"http://127.0.0.1"均不适用于
它给:
Unable to resolve host "http://localhost": No address associated
with hostname android
使用localhost的最佳方法是什么?
更新
感谢所有注释:"http://localhost"是错误的。 正确的是"localhost"或"127.0.0.1"或"127.0.0.2"等。但是我希望最好的解决方案是标记答案。
-
如何从Android设备访问本地主机?
-
尝试127.0.2.2。让我知道,您是否正在模拟器上测试客户端?
-
@AllIsWell不。 127.0.0.2在实际设备上不起作用。
-
@AdamS谢谢。我看到了这个答案。但这不是我想要的。
-
gh,是的,我尝试取消标记,因为我意识到这是错误的事情,所以我不知道该怎么做。
-
@trololo 127.0.2.2是您尝试的那个还是127.0.0.2?
-
为了澄清起见,您是否正在尝试在该设备上运行服务器并在同一设备上连接到该服务器?那与在此弹出的大多数本地主机问题完全不同,如果您正在做什么,Id建议您更新您的问题以使其更清楚。
-
SERVER_IP ="http:localhost" nor "http:127.0.0.1"。不要指定协议,当然也不要指定http。尝试SERVER_IP ="localhost" or "127.0.0.1"。确实,这是在同一应用程序还是在同一设备上?
-
@greenapps我发现没有http://的所有IP才能正常工作:127.0.0.1、127.0.2.2,localhost。在上述所有情况下,s.getRemoteSocketAddress()。toString()均给出" 127.0.0.1"
-
@greenapps相同的应用程序和相同的设备。
套接字通过TCP进行通信,TCP是一种比HTTP低的协议。 在标识用于套接字通信的服务器地址时,请使用服务器的裸名(例如," localhost")或点分四边形(例如," 192.168.0.100")。
不要包含http://或任何其他方案。
如果我正确理解了这个问题,并且目标是在同一台机器(电话)之间打开一个插座,则可以使用
获取"回送"接口,等效于使用localhost。
-
这就是我要的! 非常感谢。 连接已接受。 s.getRemoteSocketAddress()。toString()给了我ip_port:/ :: 1:44967
根据此答案,您可以简单地使用本地IP充当localhost。 您可以在Windows上使用ipconfig或在Linux上使用ifconfig来找到它。
显然,您也可以用10.0.2.2代替
-
@RyPole 10.0.2.2不起作用。 最好的主意是使用当前IP。
-
是的,请记住它不是您的公共IP,而是您的网关。
-
即使我尝试不是" http://10.0.2.2"而是" 10.0.2.2",此IP也不起作用