通过android模拟器连接到服务器

时间:2014-05-22 15:33:39

标签: android networking android-emulator

在我的应用程序中,我正在尝试连接到具有指定主机的服务器(虚拟机),但我一直收到错误"找不到具有指定主机名的服务器",而当我通过浏览器从我的本地计算机连接相同的服务器或只是ping,我能够做到这一点。我在本地计算机上修改了hosts文件,并在android仿真器上上传了相同的hosts文件。有没有人能帮我解决这个问题?

1 个答案:

答案 0 :(得分:4)

您可能必须将虚拟机配置为将端口从主机端口转发到虚拟机Web服务器

  1. 配置虚拟机服务器:在我的案例中是VirtualBox中的Ubuntu
    • 通过this link转发端口或通过网络选项卡使用NAT端口转发
  2. 确保可在主机中访问服务器
    • 在主机网络浏览器中(例如我的屏幕截图中的Chrome),转到10.0.2.2:configuredPort(在我的情况下为localhost:8181)
  3. 启动Android模拟器并转到10.0.2.2:configuredPort
    • 10.0.2.2的特殊IP取自Android docs并代表您的主机
  4. My VirtualBox setup with the Android Emulator

    编辑:

    如果虚拟机在网络上桥接,则如果修改Android hosts file,则应通过IP /主机名访问该虚拟机。

    127.0.0.1           localhost
    192.168.0.123       virtualMachineBridgedAddress.com
    10.0.2.2            hostMachineAddress.com