没有Mac的Xamarin Visual Studio IOS开发?


70

我是.NET开发人员,想用C#编写IOS和Android应用程序。我已经阅读了有关Visual Studio的Xamarin的内容,即使不是有点贵也看起来很有趣!

您需要Mac来调试代码吗?您只需要联网的Mac即可将应用程序实际部署到商店?

最好的选择是购买Mac并在VM中运行带VS的Windows,还是我可以使用Windows计算机,在Windows中编写和调试代码,然后仅连接到联网的Mac进行最终部署?

Answers:


40

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


1
感谢@Jason,解决此问题的最佳方法是使用Mac,并通过Parallels等在VM上运行Windows?
Hardgraf 2014年

我个人只是使​​用Xamarin Studio IDE,但是很多喜欢VS的人都是在VM内运行它的
Jason

8
不仅仅是学习Objective-C和Java。您也不必维护三个不同的代码库(假设您也正在为Windows Phone开发)。添加新功能,修复错误以及能够同时在所有平台上发布绝对值得投资。
2014年

3
这家伙有一个很好的写了对过程有经验的角度看: vincenth.net/blog/archive/2014/11/18/...
保罗Perrick

5
请注意,自给出答案以来,情况已经改变。2017年中,Xamarin发布了Live Player(请参阅@ebattulga的回答),该播放器允许“ iOS的持续开发和调试”(xamarin.com/live)。另请参阅arstechnica.com/?post_type=post&p=1094721以获取更多信息。
Christopher Brown

45

从2017年5月开始,您可以开发不使用MAC的应用程序。

Microsoft Xamarin引入了Live Player。使用Live Player,可以将iOS应用程序从运行Visual Studio的PC直接部署到iPhone或其他iDevice上,然后可以在其中测试和调试代码。


警告Xamarin Live Player预览已结束。查看讨论

观看此视频:https : //www.youtube.com/watch?v=awgZDL1a3YI

这是Live Player入门部分:Live Player

注意:最终版本和提交到App Store仍需要Mac

设备要求

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

的iOS

  • iOS 9.0或更高版本。
  • ARM64处理器。
  • 在App Store中查看受支持设备的列表

安卓

  • 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之类的工具。

2
当我开始使用Xamarin时,只是一个“陷阱”。根据blog.xamarin.com/xamarin-live-player-faq反射功能无法正常工作。我正在努力弄清楚为什么我的JSON.NET代码未正确序列化。因为我的应用程序通过json与rest api通信,所以它对Live Player毫无用处。
ElPresidente '18

@ElPresidente很抱歉给您带来不便。我刚刚更新了我的帖子,但限制为live player
ebattulga

有谁知道“有限的反思支持”是什么意思?
Davatar '18

4
注意:根据本讨论部分,iOS Live Player已死:​​“我们将不再分发Xamarin Live Player的iOS版本。”
安德斯·卡斯滕森

2
我也发现iOS Live Player也死了。根据您想要喂食野兽的严重程度,最便宜,最省时的方法就是只得到400美元的Mac mini。苹果在这些破烂的机器上不赚钱,所以您没有给它们喂太多东西,所有的头痛都会消失。smh
Newclique

28

您可以使用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安装帮助:http : //www.sysprobs.com/easily-run-mac-os-x-10-8-mountain-lion-retail-on-pc- with-vmware-image

2)单声道:http : //download.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-3.2.4.macos10.xamarin.x86.pkg

3)Xamarin Studio:http//download.xamarin.com/studio/Mac/XamarinStudio-4.2.1-1.dmg

4)MonoTouch:http : //download.xamarin.com/MonoTouch/Mac/monotouch-7.0.4.209.pkg

5)Xcode


是的,但是您需要一台实际的Mac机器才能使Apple iOS SDK出现在编译否吗?
Hardgraf 2014年

17
我完全使用WMware来开发和发布iOS应用程序,但是我没有Mac
Saeid N.

1
@Hardgraf我编辑了答案,您可以找到所需的所有工具
Saeid N.

8
在非Mac硬件上(直接或在VM中)运行OS X违反了Apple的许可
Jason

1
@Luiso当然,看到我的答案在这里,这将给你一个数字,你需要开始的链接:stackoverflow.com/questions/27090796/...
SMKS

17

更新2018

安装VirtualBox https://www.virtualbox.org/

在VirtualBox上安装MacOs 10.13 https://techsviewer.com/install-macos-high-sierra-virtualbox-windows/

在Mac上使用Apple帐户创建或登录

安装XCode 9.0 https://download.developer.apple.com/Developer_Tools/Xcode_9/Xcode_9.xip

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

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

在Windows中> Visual Studio(Xamarin Project)>与Mac配对

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

让Visual Studio在Mac上安装Xamarin IOS,IOS SDK和其他工具

全部设置。


您真的尝试过了吗,是否有效?浪费我们的时间之前:D
埃米尔(Emil),

是的,它有效。但这是不可用的(即使使用世界您好示例)。我的机器规格为i7-8550u 16GB(因此,如果规格更高,可能会更好)
Ateik '18

1
@Ateik不用你这个意思。您的意思是即使您的PC配置很慢?
埃米尔(Emil)

是的,有了上述规范,编译Hello World应用程序和运行iOS模拟器的速度很慢
Ateik

2
抱歉,我的设置中没有性能问题。我为我的virtualbox macos机器分配了4gig ram,2processor。主机系统:Core i7 2.4ghz 4cores,32Gb ram。它在这里完全可用,但是当然这是一种破解/解决方法。总是购买Mac会更好
Verthosa '18

7

一种选择是使用远程服务执行此操作。例如:http : //www.macincloud.com


1
这是一个付费解决方案,有关在Xamarin IOS构建中在云中使用Mac的教程链接,c-sharpcorner.com / article /…
Abubakar Riaz,

是的,这是付费的,但最便宜的计划是30美元。它甚至比最便宜的翻新Mac还要低。据我了解,我需要Mac每月花几个小时才能完成发布之前的最终版本。问题:我需要在Mac上具有管理员权限才能为iOS进行构建吗?即我需要购买具有完全管理员/ root用户访问权限的计划?假设我拥有Visual Studio Enterprise 2019和功能强大的Windows 10桌面,哪个MacInCloud计划最适合最终构建iOS Xamarin应用程序?(即付即用,托管服务器,专用服务器,Azure代理)
Alt-WN

1

谁都知道虚拟机是解决方案!但是,当您想在Windows上安装OSX时,正如您刚才所说的,这并不是一件容易的事。找到最佳的OS ROM非常重要。

看看这里。而且您必须知道限制是苹果的责任,而不是Xamarin的责任。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.