我可以在Android模拟器中做什么来将它连接到我的本地主机web服务器页面http://localhost或http://127.0.0.1?

我已经尝试过了,但模拟器仍然需要我的请求,如谷歌搜索localhost或更糟糕的是,它说,它没有找到页面,而我的web服务器正常运行。


当前回答

对于我的Mac OS mountain Lion设备:

http://10.0.2.2:8888

工作完美!

其他回答

你可以在每次运行模拟器时使用localhost:8000来连接到你机器的localhost(仅在Mac上测试):

adb reverse tcp:8000 tcp:8000

只要把它放到Android Studio终端。

它基本上设置了一个反向代理,其中运行在您的手机上的http服务器接受端口上的连接,并将它们连接到您的计算机,反之亦然。

另一种解决方法是从no-ip.org获得一个免费域名,并将其指向您的本地ip地址。 然后,您可以尝试http://yourdomain.no-ip.org/yourwebservice而不是使用http://localhost/yourwebservice

根据文件:

10.0.2.2 -主机环回接口的特殊别名(例如,开发计算机上的127.0.0.1)

查看模拟器网络以获得更多关于模拟器网络的技巧。

localhost指的是运行代码的设备,在本例中是模拟器。

如果您想引用运行Android模拟器的计算机,请使用IP地址10.0.2.2代替。

你可以在这里阅读更多。

我在家里的机器上成功地使用了10.0.2.2,但在工作中,它不起作用。在瞎折腾了几个小时之后,我使用Android Virtual Device (AVD)管理器创建了一个新的模拟器实例,最终10.0.2.2运行了。

我不知道其他模拟器实例有什么问题(平台是相同的),但如果您发现10.0.2.2不起作用,请尝试创建一个新的模拟器实例。