我可以在Android模拟器中做什么来将它连接到我的本地主机web服务器页面http://localhost或http://127.0.0.1?
我已经尝试过了,但模拟器仍然需要我的请求,如谷歌搜索localhost或更糟糕的是,它说,它没有找到页面,而我的web服务器正常运行。
我可以在Android模拟器中做什么来将它连接到我的本地主机web服务器页面http://localhost或http://127.0.0.1?
我已经尝试过了,但模拟器仍然需要我的请求,如谷歌搜索localhost或更糟糕的是,它说,它没有找到页面,而我的web服务器正常运行。
当前回答
我不知道,也许这个话题已经解决了,但当我最近尝试在Windows机器上做这件事时,我遇到了很多困难。 所以我的解决方法很简单。我已经下载了这个软件 http://www.lenzg.net/rinetd/rinetd.html遵循他们关于如何使端口转发的说明,然后成功地我的android设备连接到asp.net localhost项目,并停止在我的断点。
我的rinetd.conf文件:
10.1.1.20 1234 127.0.0.1 1234
10.1.1.20 82 127.0.0.1 82
10.1.1.20是我的本地主机ip, 82和1234是我的端口 我也有板条箱浴文件 为了方便生活你的名字bathfile.bat,把该文件在rinedfolder。我的沐浴档案:
rinetd.exe -c rinetd.conf
在启动这个软件后,启动你的aps.net服务器,并尝试从android设备或本地网络中的任何设备访问(例如计算机ABC启动putty),你会看到一切正常。不需要去路由器设置或做任何其他复杂的事情。 我希望这对你有所帮助。享受。
其他回答
尝试http://10.0.2.2:8080/,其中8080是端口号。它工作得很完美。如果你只是尝试10.0.2.2,它不会工作。需要添加端口号。此外,如果Microsoft IIS已安装,请尝试从控制面板关闭该功能(如果使用任何windows操作系统),然后尝试如上所述。
根据文件:
10.0.2.2 -主机环回接口的特殊别名(例如,开发计算机上的127.0.0.1)
查看模拟器网络以获得更多关于模拟器网络的技巧。
允许安装PWA
首先,安装Android调试桥:
$ sudo apt install adb android-sdk-platform-tools-common
像往常一样启动你的Android模拟器,例如:
$ ~/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86
然后,在Android模拟器的网桥上配置反向代理,将localhost HTTP请求转发到运行在主机计算机上的localhost服务器的适当端口(例如8000),反之亦然:
$ adb reverse tcp:8000 tcp:8000
一个渐进web应用程序(PWA)正在localhost:8000上提供服务 或者127.0.0.1:8000将是可安装的,并连接到它的service-worker.js。而PWA安装不允许从IP地址10.0.2.2。
注意:adb reverse tcp:8000 tcp:8000需要在每次Android模拟器调用后重新发布。
因此,一个bash脚本启动一个Android模拟器,后面跟着一个反向代理,看起来像这样:
#!/usr/bin/env bash
$HOME/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86 > /dev/null 2>&1
adb reverse tcp:8000 tcp:8000
我知道这是旧的,但如果您发现10.0.2.2不能作为计算机IP,请按照以下说明找到它
你可以在每次运行模拟器时使用localhost:8000来连接到你机器的localhost(仅在Mac上测试):
adb reverse tcp:8000 tcp:8000
只要把它放到Android Studio终端。
它基本上设置了一个反向代理,其中运行在您的手机上的http服务器接受端口上的连接,并将它们连接到您的计算机,反之亦然。