我无法将localhost与xamarin.android应用程序一起使用。 我已经执行了Web项目& Chrome浏览器上的服务项目(不是移动应用)。
我尝试在Android Studio模拟器中浏览的显示端口号& Genymotion模拟器通过附加10.0.2.2:& 10.0.3.2:分别得到了结果 Bad Request-Invalid Hostname 。即使我尝试了服务项目端口号,两者都无效。
Web项目:使用Visual Studio 2017和ASP.NET的ASP.NET项目让服务项目在同一个解决方案中。
答案 0 :(得分:3)
打开您的解决方案文件夹。您可能在1个文件夹中有多个项目,您不需要项目的文件夹,但需要一个根文件夹。在其中有.vs/config/applicationhost.config
个文件,将其打开。
<sites>
,如果您在一种解决方案中切换启动项目,则将有您正在运行的站点,可能会有多个。右键单击它的图标时,该名称将与IIS在任务栏中显示的名称相对应。标签可以是例如<site name="ServerApp" id="2">
。
现在,您需要添加一行以将外部连接绑定到您的计算机ip,例如
<site name="ServerApp" id="2">
...
<bindings>
...
<binding protocol="http" bindingInformation="*:60424:127.0.0.1" />
</bindings>
</site>
设置适当的端口号和协议,这里重要的是将它们映射到127.0.0.1
,而不是“ localhost”,然后它们就可以通过10.0.2.2:60424
用于android模拟器了
答案 1 :(得分:1)
您可以使用我们的免费扩展传送带https://marketplace.visualstudio.com/items?itemName=vs-publisher-1448185.ConveyorbyKeyoti
如果传送带提供给您的IP无法使用,请用10.0.2.2代替。使用传送带解决了需要使IIS Express绑定到其他主机名的问题。它还具有其他一些功能。
答案 2 :(得分:0)
我已经从下面的答案中解决了这个问题。通过使用第三方软件ngrock
。