Visual Studio 2015 CTP5 Android Emulator环回到localhost?

时间:2015-02-01 11:39:43

标签: android visual-studio-cordova

我正在使用VS 2013连接新的VS2015 Android模拟器。这似乎现在工作,我可以调试,设置断点等等都很好。 (现在,我会使用VS2015,但它无法正常部署 - 无论何时)。 我也在我的机器上开发服务器应用程序并使用Fiddler作为http调试帮助..我不确定这种情况并非罕见。

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

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

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开发站点..我也尝试过:

http://mymachinename:64963

因为我从这个URL带来了网络和API服务,所以我也在我真正的Android手机(在我的局域网上通过wifi)上尝试了一个Chrome浏览器,这也无法进入我的开发机器(我的其他个人电脑)能够)。所以我知道它可能无法解析名字?但真的不确定下一步该去哪儿?我想知道我的电脑上的Hosts文件,但不确定我是否可以/应该将IP地址设置为主机名? ..任何指针?谢谢,布雷特

6 个答案:

答案 0 :(得分:11)

169.254.80.80 是localhost环回。

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

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

答案 1 :(得分:1)

我正在回答这个问题,因为我已经看到很多关于这个主题的评论/问题,需要包含一些难以纳入评论的内容......我已经解决了。 首先解决方案是删除/替换vsemu.vhd和vsemu.sdcard.vhd以获得具有安全副本的模拟器。这是因为在我努力解决问题时我假设我已经更改了模拟器手机数据中的一些设置。可悲的是,我不确定是什么。

然而,这个清单可能对某些人有用,在此之前我被引导到它的事实是因为我从我的服务器URL获得了Web服务以及API,因此我能够测试网页访问。这适用于个人电脑,但在我的网络上使用个人电脑名称的wifi连接安卓设备失败..正如我原来的问题所述。但它也无法使用数字IP地址。

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

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

命令让它全部通过。 一旦我完成了这个,我就可以使用手机的IP地址进行连接,这让我发现模拟器显然遇到了某种形式的问题。更换VHD固定了这个,我现在正在沟通。

答案 2 :(得分:1)

如果有其他人使用以下IP为我解决此问题:

  1. 机器的IP
  2. 169.254.80.80
  3. 但是,请记住VS Android模拟器在Hyper-v VM中运行, 因此,我必须在防火墙上打一个洞,以便模拟器可以访问我的应用程序端口。

    如果您使用Visual Studio 2015和VS Android模拟器的Web API link帮助了我很多

答案 3 :(得分:0)

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

参见链接: http://developer.android.com/tools/devices/emulator.html

答案 4 :(得分:0)

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

我的BackEnd是一个PHP SlimFramework Rest Api。

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

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

答案 5 :(得分:0)

在通用IP中,您必须考虑的是您正在使用/分配以运行Android模拟器的网络的IP。 找到它的非常原始/粗鲁的方法是进入设置(模拟器右侧面板上的齿轮符号,而不是内部的齿轮符号)并查找IP地址。 N/W IP Address in Emulator。或者打开ADB Logging窗口,它位于左上角。

现在在命令提示符下输入ipconfig并匹配前3个IP号码,这就是你的localhost环回网络。

因为在许多情况下,我们将拥有多个以太网或虚拟机主机,只有网络正在运行。

快乐编码!!