C# 没有Mac的Xamarin Visual Studio IOS开发?

C# 没有Mac的Xamarin Visual Studio IOS开发?,c#,android,ios,macos,xamarin,C#,Android,Ios,Macos,Xamarin,我是一名.NET开发人员,想用C#编写一个IOS和Android应用程序。我已经阅读了有关Xamarin for Visual Studio的文章,它看起来很有趣,即使不是有点贵 你需要Mac来调试你的代码吗?你是否只需要一台联网的Mac电脑就可以将应用程序部署到商店中 购买Mac电脑并在虚拟机中使用VS运行Windows是最好的选择,还是我可以使用我的Windows机器,在Windows中编写并调试代码,然后连接到联网的Mac电脑进行最终部署?是的,您必须拥有Mac电脑才能进行Xamarin.

我是一名.NET开发人员,想用C#编写一个IOS和Android应用程序。我已经阅读了有关Xamarin for Visual Studio的文章,它看起来很有趣,即使不是有点贵

你需要Mac来调试你的代码吗?你是否只需要一台联网的Mac电脑就可以将应用程序部署到商店中


购买Mac电脑并在虚拟机中使用VS运行Windows是最好的选择,还是我可以使用我的Windows机器,在Windows中编写并调试代码,然后连接到联网的Mac电脑进行最终部署?

是的,您必须拥有Mac电脑才能进行Xamarin.iOS开发。Mac是构建和运行iOS模拟器所必需的。您可以将其用作构建服务器,并在Visual Studio中实际进行开发(在独立PC中,或在Mac上运行的VM上),也可以直接在Mac上使用Xamarin Studio作为IDE进行开发。

您可以使用Xamarin Studio代替Visual Studio,并通过C#构建iOS应用程序。 首先安装VMware Workstation,然后下载OS X映像并由VMware运行

然后在上面安装工具并享受

工具:

编辑:以下链接已过时,您必须安装Mac OS 10.10才能安装XCode 6

您需要的iOS工具:

1) 适用于Windows的Mac OS X映像 注意:Max OS X安装帮助:

2) 单声道:

3) Xamarin工作室:

4) 单触式:


5) Xcode

一个选项是使用远程服务来完成此操作。 例如:
任何人都知道虚拟机是解决方案!但是,当你想在windows上安装OSX时,这并不像你刚才说的那么容易。 找到最好的OS ROM是非常重要的

看看吧。
你必须知道,限制是苹果的行为,而不是Xamarin的行为。

从2017年5月起,你可以在没有MAC的情况下开发应用程序

微软Xamarin推出了一款直播播放器。使用Live Player,iOS应用程序可以从运行Visual Studio的PC直接部署到iPhone或其他iDevice上,然后可以在那里测试和调试代码


警告Xamarin Live Player预览已结束。 请看此视频:

这是Live Player入门部分:

注意:最终构建和提交到应用商店仍然需要Mac

设备要求

Xamarin Live Player应用程序支持以下设备:

iOS

  • iOS 9.0或更高版本
  • ARM64处理器
  • 请检查应用商店以获取一组受支持的设备
安卓

  • Android 4.2或更高版本
  • ARM-v7a、ARM-v8a、ARM64-v8a、x86或x86_64处理器
限制

Xamarin Live Player可以运行的内容有一些限制,包括以下各项:

  • 当前不支持使用AXML文件设计的Android用户界面
  • 某些iOS情节提要功能不受支持
  • 不支持iOS XIB文件
  • 不支持自定义渲染器
  • 不支持Xamarin.Forms效果
  • 不支持嵌入资源(即在PCL中嵌入图像或其他资源)
  • 对反射的支持有限(目前影响一些流行的NUGET,如SQLite和Json.NET)。其他NUGET仍然受支持
  • 某些系统类不能被重写(例如,不能实现子类)
  • 某些需要配置的平台功能无法在Xamarin Live Player应用程序中运行(但是它已配置为用于常见操作,如摄像头访问)
  • 忽略自定义目标和生成步骤。例如,像Fody这样的工具无法合并

    • 2018年更新

      安装VirtualBox

      在VirtualBox上安装MacOs 10.13

      使用mac上的apple帐户创建或登录

      安装XCode 9.0

      启用远程登录 系统首选项>共享>远程登录>为所有用户启用

      使用附加网络适配器配置VirtualBox(仅限主机)

      在Windows>Visual Studio(Xamarin项目)>与mac配对

      输入第二个网络适配器的IP地址

      让Visual studio在Mac上安装Xamarin IOS、IOS SDK和其他工具


      一切就绪。

      谢谢@Jason,所以解决这个问题的最好方法是使用Mac,Windows通过并行程序在虚拟机上运行。我个人只使用Xamarin Studio IDE,但很多人喜欢在虚拟机上运行虚拟机。这不仅仅是学习Objective-C和Java。您也不必维护三种不同的代码库(假设您也在为Windows Phone开发)。添加新功能、修复bug以及能够同时为所有平台发布肯定是值得投资的。这家伙从经验丰富的角度对这一过程进行了很好的总结:请注意,自从给出了这个答案后,情况发生了变化。2017年年中,Xamarin发布了Live Player(见@ebattulga的答案),该播放器允许“iOS的持续开发和调试”()。另请参阅以了解更多信息。是的,但您需要有一台真正的Mac计算机,才能在编译时使用Apple iOS SDK。否?我完全使用WMware来开发和发布iOS应用程序,我没有mac@Hardgraf我编辑了我的答案,您可以找到在非Mac硬件(直接或在VM中)上运行OS X所需的所有工具这违反了苹果的标准license@Luiso当然,在这里可以看到我的答案,它会给你们一些你们需要开始的链接:当我开始使用Xamarin时,只是一个“明白了”。“照反射”并不像你想象的那样有效。我正在绞尽脑汁想弄清楚为什么我的JSON.NET代码没有正确序列化。这使得Live Player对我来说毫无用处,因为我的应用程序通过json与rest api通信。@elPresident抱歉给您带来不便。我刚刚更新了我的帖子,限制了
      现场播放