如何使用Xamarin的IOS Remoting模拟器

Dea*_*alk 3 xamarin.ios xamarin

显然,适用于Windows的新Xamarin iOS远程处理模拟器可在Windows上用于Visual Studio的Xamarin Alpha通道中使用.

但是,它似乎没有出现的机制.似乎没有按钮或选项在Windows中显示这个新的iOS模拟器.

在线没有文档,或与此相关的视频或论坛答案

如果Xamarin的任何人都在关注此标记,请详细说明.

谢谢

Sus*_*ver 13

iOS模拟器(适用于Windows)

预览安装程序:

下载预览安装程序并在Windows计算机上安装.

http://download.xamarin.com/xamarin-simulator/Xamarin.Simulator.Installer.0.9.0.25.msi

要启用远程iOS模拟器:

在启动远程iOS模拟器之前,请确保Visual Studio至少已连接到Mac一次.

转到工具>选项> Xamarin> iOS设置,勾选远程模拟器到Windows的框:

在此输入图像描述

https://developer.xamarin.com/guides/cross-platform/windows/ios-simulator/

更新 - 故障排除:

  • 将Windows和Mac计算机上的Xamarin更新为最新的alpha版本.

    **VisualStudio版本的Xamarin插件现在应该是4.2.021+

(通过Tools\iOS\Mac Agent Console验证)

gv Broker42021
Requesting version of client Broker42021...
Waiting for response...
Current version of client Broker42021: 4.2.0.21
Run Code Online (Sandbox Code Playgroud)
  • 安装Xamarin Simulator(通过下载链接以上)在Windows

注意:这将安装到C:\Program Files (x86)\Xamarin\Simulator


  • 在Mac上,杀死所有Xamarin代理你的Mac上运行:

    ps ax |grep Mono.framework

注意:当一切运行正常时,您将运行五(5)个Mono进程,其中一个是Xamarin.Simulator.Server.exe进程:


/Library/Frameworks/Mono.framework/Versions/Current/bin/mono /Users/sushi/Library/Caches/Xamarin/XMA/Broker/4.2.0.21/Broker.exe
/Library/Frameworks/Mono.framework/Versions/Current/bin/mono /Users/sushi/Library/Caches/Xamarin/XMA/Agents/IDB/4.2.0.21/IDB.exe
/Library/Frameworks/Mono.framework/Versions/Current/bin/mono /Users/sushi/Library/Caches/Xamarin/XMA/Agents/Build/4.2.0.21/Build.exe
/Library/Frameworks/Mono.framework/Versions/Current/bin/mono /Users/sushi/Library/Caches/Xamarin/XMA/Agents/Designer/4.2.0.21/Designer.exe
/Library/Frameworks/Mono.framework/Versions/Current/bin/mono /Users/sushi/Library/Caches/Xamarin/Simulator/Server/Xamarin.Simulator.Server.exe
Run Code Online (Sandbox Code Playgroud)

买家要小心:

ps -ax |grep Mono.framework | cut -c 1-5 | xargs kill
Run Code Online (Sandbox Code Playgroud)
  • 在Mac上,杀死所有当前sshd进程:

注意:假设您没有通过ssh连接执行此操作;-)

买家要小心:

ps -ax |grep sshd | cut -c 1-5 | xargs kill
Run Code Online (Sandbox Code Playgroud)

注意:您需要root权限才能做到这一点,sudo su首先


  • 在Windows上,杀死所有 Xamarin.Simulator运行任务

注意:我们有一些Windows PC有数百(!)这些运行(?!!)(我们只是重新启动那台机器),但发现大多数未能运行/查看Windows上的模拟器有3-5这些任务正在运行


  • 由于您杀死了Mac计算机上的所有代理程序,因此Visual Studio/Xamarin将不再连接到Mac,因此请重新连接.

注意:重新连接到Mac构建主机之前,请确保已选中" 远程模拟器到Windows"选项.


  • F5/Debug - 开始调试iOS项目

  • 翻转到任务管理器,您应该看到一个 Xamarin.Simulator进程正在运行:

在此输入图像描述


  • 在一两秒钟之后,该进程会出现一些CPU使用率高峰,并且应该出现:

在此输入图像描述


测试:

  • Parallels Desktop 11/Business Edition(11.1.2+)**Mac主机/ Windows Guest
  • 物理Windows和Mac机器

我在所有部署的Mac上使用的Parallels设置:

在Parallels VM(Windows)配置中,将第二个网络适配器添加到分配为仅主机的Windows guest虚拟机,并将该IP地址用作Xamarin连接的Mac主机,而不是公共,共享或桥接IP地址.

在Windows中,禁用此主机适配器上的防火墙.

不要使用bonjour/Window共享Mac主机名(XXXX.local),使用分配给仅主机接口/网络适配器的专用IP地址.添加另一个Mac连接并输入IP地址,而不是主机名,并且不要使用Xamarin自动添加到包含XXXX.local主机名的列表...

在Mac中,如果使用Little Snitch,请确保您具有允许从该Windows仅主机IP地址范围到该launchd进程的入站连接的规则(/sbin/launchd是生成sshd进程的进程)

仍然没有启动模拟器?

检查你的Mac Console:

如果您看到以下项目:

4/30/16 11:18:00.993 AM sshd[59748]: error: connect_to 127.0.0.1 port 52421: failed.
Run Code Online (Sandbox Code Playgroud)

认为 Little Snitch(或其他基于Mac的防火墙)正在阻止Xamarin正在创建的反向安全隧道.我不知道为什么这不会导致所有其他Xamarin代理(构建,设计师等)也失败.禁用Little Snitch以确认(终止所有Xamarin代理和sshd进程并重新开始).如果远程模拟器工作,检查您的Little Snitch/防火墙规则,有些不对劲.