【问题标题】:Visual Studio 2015 CTP5 Android Emulator loopback to localhost?Visual Studio 2015 CTP5 Android Emulator 环回本地主机?
【发布时间】:2015-02-01 11:39:43
【问题描述】:

我正在使用 VS 2013 连接新的 VS2015 Android 模拟器。这似乎现在可以工作,我可以调试、设置断点等,一切都很好。 (现在,我会使用 VS2015,但它不会正确部署 - 没关系)。 我还在我的机器上开发服务器应用程序,并使用 Fiddler 作为 http 调试辅助工具。我确信这种情况并不罕见。

服务器正在使用 IIS Express 运行(也在 VS 2013 的另一个实例中进行调试),我已将绑定添加到 applicationhost.config,因此 IISExpress 服务器在我的 LAN 上可以从其他 PC 看到,我已经检查过它是可见。

尽我所能,我似乎无法让模拟器将 http 请求发送回我的计算机。 我的 javascript 使用服务库来保存 url:

var serviceBase = 'http://192.168.2.4:64963/'; //'http://169.254.220.177:64963/';  //'http://10.0.2.2:64963/'; //'http://localhost:64963/';

评论的显示了我尝试过的。这些都不起作用..第一个是我机器在局域网上的IP,其余的是我在这里或Android开发网站上捡到的各种IP..我也尝试过:

http://mymachinename:64963

因为我从这个 URL 带来了 web 和 API 服务,所以我还在我的真正的 android 手机上尝试了一个 chrome 浏览器(通过我的 LAN 上的 wifi),这也无法到达我的开发机器(我的另一台电脑能够)。所以我知道它可能无法解析名称?但真的不知道下一步该去哪里?我想知道我 PC 上的 Hosts 文件,但不确定我是否可以/应该将 IP 地址设置为主机名? ..任何指针?谢谢,布雷特

【问题讨论】:

  • 我会补充一点,这确实可以使用 Ripple .. 虽然因为我安装了 VS2015,这似乎是行为不端击中“随机”,即未设置断点:-S .. 我也可以连接到局域网上另一台机器上的服务器使用192.168.2.4:64963。 .

标签: android visual-studio-cordova


【解决方案1】:

169.254.80.80 是本地主机环回。

通过转到Android VS 模拟器中的附加工具(单击右侧的>> 按钮)并选择网络选项卡,您将获得有关网络连接的所有信息。

对于 localhost 环回,请使用桌面适配器 #2 下列出的地址。桌面适配器 #1 也应该可以工作,它是您机器的 IP 地址。

【讨论】:

    【解决方案2】:

    我正在回答这个问题,因为我已经看到了很多关于这个主题的 cmets/问题,并且需要包含一些难以放入 cmets 中的部分。我已经解决了。 首先解决方案..是用安全副本删除/替换模拟器的 vsemu.vhd 和 vsemu.sdcard.vhd。这是因为在我努力解决问题的过程中,我假设我已经更改了模拟器电话数据中的一些设置。遗憾的是我不确定是什么。

    但是,这个清单可能对某些人有用,在此之前,由于我有 Web 服务以及来自服务器 URL 的 API,我能够测试网页访问。这适用于个人电脑,但在我的网络上使用个人电脑名称连接 wifi 的 android 设备上失败了。如我原来的问题中所述。但它也不适用于数字 IP 地址。

    我已经将数字IP添加到IISExpress的applicationhosts.config文件中,但是我没有做的,因为我认为它在它所指的机器上,是执行

    netsh http add urlacl url=http://192.168.2.1:94693/ user=everyone
    

    命令让它全部通过。 完成此操作后,我就可以使用电话的 IP 地址进行连接,这让我发现模拟器显然存在某种形式的问题。更换 VHD 解决了这个问题,我现在正在沟通。

    【讨论】:

      【解决方案3】:

      如果其他人使用以下 IP 为我工作遇到此问题:

      1. 机器的IP
      2. 169.254.80.80

      但是,请记住 VS Android 模拟器是在 Hyper-v 虚拟机中运行的, 所以我不得不在我的防火墙上打一个洞,让模拟器可以访问我的应用程序端口。

      如果您将 Web API 与 Visual Studio 2015 和 VS Android 模拟器一起使用,这个 link 对我有很大帮助

      【讨论】:

        【解决方案4】:

        使用 10.0.2.2,这是从模拟器到主机的环回。

        查看链接: http://developer.android.com/tools/devices/emulator.html

        【讨论】:

        • 是的,我知道这一点并且我已经尝试过了(请参阅上面的“servicebase =”中的列表。我刚才确实回去再试了一次。但你永远不知道它仍然是一样的..
        • .. 我当然要补充一点,这个链接是指谷歌自己的安卓模拟器。我在 Microsoft 文档中看不到任何内容说他们的模拟器也这样做(或不这样做)..
        【解决方案5】:

        我遇到了同样的问题,但以上答案都对我没有用。

        我的后端是一个 PHP SlimFramework Rest Api。

        我决定在 Slim 的自动启动中更改 IP(是 localhost:7888),我尝试了这个:php -S 192.168.43.20:7888,在我配置对该 IP 的调用后一切正常。

        我希望这可以帮助某人......

        【讨论】:

          【解决方案6】:

          一般来说,您必须考虑的 IP 是您正在使用/分配来运行 android 模拟器的网络的 IP。 找到它的非常原始/粗鲁的方法是转到设置(模拟器右侧面板上的齿轮符号,而不是里面的那个)并查找 IP 地址。 。或者打开 ADB Logging 窗口,它位于左上角。

          现在在命令提示符下键入 ipconfig 并匹配 IP 的前 3 个数字,这就是您的 localhost 环回网络。

          因为在许多情况下,我们将有不止一个以太网或 virtualbox 主机,只有网络在运行。

          编码愉快!!

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-01-01
            • 2015-08-14
            • 1970-01-01
            • 2017-04-22
            • 2016-07-19
            • 1970-01-01
            • 1970-01-01
            • 2017-03-07
            相关资源
            最近更新 更多