如何在Windows开发机上开发iPhone应用?

1266

有没有办法在Windows机器上调试iPhone SDK?是否有计划推出Windows版的iPhone SDK版本?

我能想到的另一种方法是在运行在Windows上的VMWare服务器上运行Mac VM映像,但我不确定这样做是否合法。


2
Mono的Miguel de Icaza发布了一篇关于在iPhone上使用和编译Mono(.NET Framework的Linux端口)的文章。 - Jon Limjap
27
那么http://macincloud.com怎么样? :) - salmatron
4
你可以使用Unity3D。只需进行一次开发,便可针对所有移动平台进行开发。 - ababab5
7
如果你不想费心在Windows上运行它的话,就购买一台翻新的“Mac mini”。可以访问http://www.apple.com/shop/browse/home/specialdeals/mac/mac_mini 或谷歌搜索“购买翻新的Mac mini”。连接你现有的显示器,使用无线键盘和鼠标(我使用的是Logitech的,使用他们的Unify USB接收器)。 - ToolmakerSteve
7
“只要买个苹果电脑”?我正在使用MacBook Pro,但我真的不喜欢在OS X上工作。我更愿意使用Linux。 - Richard de Wit
显示剩余11条评论
42个回答

7
您可以使用Sentenza在Windows上制作iPhone应用程序。 已经测试成功。 这不是一个解决方案,而是一个很好的选择!

Sentenza for iOS似乎已经不存在了。我所能找到的只有http://www.sentenzadesktop.com/,这是针对桌面而非iOS的,并且自2014年以来就没有更新过。 - user149341

7

另外还有两个选项:

  1. Titanium Developer - 免费社区版 - 使用HTML / JavaScript编写 - 用Xcode编译(需要Mac或VM)

  2. OpenPlus ELIPS Studio - 使用Flex编写,使用Xcode编译(需要Mac或VM)-他们刚开始收费。

我认为这些和其他一些提到的工具可能有“工具链”选项,可以在Windows上编译成二进制文件,我也看到过您可以上传zip文件并在线完成类似工具链的编译,但这违反了苹果的许可。

如果我没有错,像Titanium这样输出/与Xcode配合使用且不使用任何第三方/替代/受限库的产品应该是符合规定的,因为您最终是在xcode中编译的普通Objective-C代码和库。


6
使用 Xamarin,现在我们可以借助 Xamarin Live Player 在 Windows 机器上开发 iPhone 应用程序。使用这个 Xamarin live player,现在可以在没有苹果系统的情况下进行开发/部署/调试周期。但是,要签名和发布应用,需要苹果系统。请查看参考 此处。我检查了参考资料,没有什么可疑的地方。

6

正如所指出的,您可以尝试使用WinChain,但如果您是新手编码人员,这将不容易。

iPhone SDK可以在Hackintosh上运行(安装有OS X的普通PC)。 我知道因为我有一个并且可以运行。

因此,在您购买了OSX许可证后,您可以尝试使用Boot-132或其他安装程序之一(如iDeneb)在另一个驱动器上将其安装在PC上。 问题是,您将需要进行大量的调整,而且仍然无法完全正常工作。


5

是的,你不需要学习Objective-C或者购买苹果软件和硬件。

Adobe已经创建了一个编译器来将ActionScript 3编程用于iOS。后来,苹果批准了这种应用程序开发方法。

这是在Windows或Linux/BSD下创建苹果应用程序的最佳方式(还有一种适用于MacOS-X)


4
您可以在PC上安装OSX系统,但体验可能不太好,需要花费大量的工作时间。另一种选择是使用基于JAVA的框架/SDK Codename one:可用于在Windows上(eclipse)编写WP8、Android、iOS应用程序,并具有所有广泛的功能。
特点概述:
  1. 完整的Android环境,具有超快速的Android模拟器
  2. 一款iPhone/iPad模拟器,可轻松将iPhone应用程序转换成大屏iPad应用程序
  3. 支持任何平台上应用程序的标准Java调试、分析
  4. 主题/样式易于定制 - 只需点击即可完成
更多信息请参见使用Java开发Android、iOS iPhone、WP8应用程序 免责声明:这是我对该产品的评价。

4
如果你想在Windows环境下开发应用程序,可以选择在Windows平台上安装MAC OS。名字是:"Niresh'MAC OS",你可以在谷歌上搜索这个文本。

然后,你可以下载整个MAC OS源码,并轻松地在Windows PC上安装MAC OS,Niresh能够破解整个操作系统。

希望这能帮到你。


3
如果你有ssh访问Mac的权限,那么你可以使用VNC(如Vine VNC,允许同时多个用户使用-轻量级客户端)来控制XCode。
如果你想从笔记本电脑访问Mac Mini,或者你的另一半霸占了你的MacBook,这将非常有用。

3
使用跨平台工具在Windows上开发iOS应用
跨平台工具非常棒:您只需编写一次应用程序,就可以将其导出到iOS和Android。 这可能会将您的应用程序开发时间和成本削减了一半。 几个跨平台工具允许您在Windows PC上开发iOS应用,或者如果您的本地网络中有Mac,则允许您编译应用程序。
好吧,不要那么急...
跨平台工具生态系统非常庞大。 一方面,您有完整的集成开发环境(IDE),例如Xamarin,可让您使用C#构建跨平台应用程序。
中间地带由PhoneGap,Cordova,Ionic和Appcelerator等工具覆盖,这些工具使您能够使用HTML5组件构建本机应用程序。 远端包括小型平台,例如React Native,该平台允许您使用JavaScript包装器编写本机应用程序。
所有跨平台工具的一个显著特点是:它们不适合初学者! 获得Mac电脑,学习Swift并构建简单的应用程序要比开始使用Xamarin容易得多。
大多数跨平台工具都需要您具有基本的编程理解、编译选项和iOS和Android生态系统的知识。 对于初学者来说,这是您真正没有的东西!
话虽如此,让我们看看几个选项:
如果您熟悉基于Windows的开发工具和IDE,并且已经知道如何编写代码,则值得检查Xamarin。 使用Xamarin,您可以使用Mono和MonoTouch框架以C#编写应用程序,适用于多个平台。 如果您熟悉基于Web的开发,请查看PhoneGap或Ionic。 您将在HTML 5、CSS和JavaScript中感到宾至如归。 别忘了:本机应用程序与网站的工作方式不同... 如果您熟悉JavaScript,或者您宁愿学习编写JavaScript而不是Swift,请查看React Native。 使用React Native,您可以使用“包装器”为iOS和Android编写本机应用程序。 始终有意识地选择跨平台工具,因为这是一个明智的选择,而不是因为您认为本机平台语言很差。 一个选项不正确,并不意味着另一个选项更加智能!
如果您不想加入专有封闭的苹果生态系统,请不要忘记,许多跨平台工具由同样邪恶的公司运营,例如谷歌,Facebook,Microsoft,Adobe和Amazon。
反对跨平台工具的常见论点是,它们仅提供有限的智能手机硬件访问和支持,并且比本机对应物“不灵敏”。 请记住,任何跨平台工具都会要求您在某个时候编写特定于平台的代码,尤其是如果您想要编写自定义功能。

2

(截至2014年底准确)

要访问原生工具(如Xcode等),有两个主要选项:

1. 虚拟机

寻找适用于修改后的Vmware Workstation/Player的Mavericks(10.9)vmware映像。一旦虚拟机能够启动,就可以无需明显问题地将其更新为10.9.5。

优点:相对较低的学习曲线(如果您对虚拟机有一定了解)

缺点:由于虚拟化环境而降低性能,没有3D加速(QE/CL)

2. Hackintosh

如果您计划购买新硬件(或至少部分购买),而不是改装现有设备(但您可能很幸运拥有常见的OEM型号(如Dell),已经为其编写了配方),则这是一个明智的选择。

优点:硬件性能没有惩罚,甚至可能超过真实的mac。如果您愿意多重引导,同样的硬件也可以用于其他操作系统

缺点:更高的学习曲线,更多的硬件限制(某些Intel wifi没有驱动程序等),这可能会导致更高的投资,如果您最初没有意图购买新硬件。

不用说,上述两个选项都不受水果公司欢迎,因此许可合规性不在讨论范围内。

3. 实际的mac(2016年添加)

对于已经拥有mac并通过Bootcamp等将其用作Windows开发机器的人来说,这是一个完美的选择。除了可能由于多重引导而产生的复杂情况外,这也是支持问题最少的选择,因此建议那些寻找长期解决方案的人使用(硬件不仅适用于当前OSX版本,还适用于未来版本)。


不确定有些工具的许可代码是否适用于Hackintosh操作系统...它们使用一些API从硬件(如硬盘编号等)创建机器哈希键。例如,我相信Xamarin无法在某些Hackintosh上运行。如果您在Windows PC上使用Visual Studio中的Xamarin,则需要购买eBay上最便宜的英特尔Mac Mini作为构建机器。 - AnthonyLambert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接