有没有办法在Windows机器上修改iPhone SDK ?有针对Windows的iPhone SDK版本的计划吗?

我能想到的另一种方法是在运行Windows的VMWare服务器上运行Mac虚拟机映像,尽管我不太确定这是否合法。


当前回答

大多数所谓的“无需Mac的iOS开发Windows解决方案”都需要Mac在最后签名并发送到应用商店。我检查了一些,但不是全部(谁有时间?)

最后,学习“不用Objective-C就能编写iOS程序的超级简单方法”实在是太麻烦了,它们有很多bug。在我看来,他们设定的目标是无法实现的。

很多时候,它们会让你用另一种语言使用Objective-C的等价语句。它们看起来差不多,但总有细微的区别,你必须在obj-c的基础上学习。这也更没有意义了,因为现在你必须学得更多,而不是学得更少。那么收益在哪里呢? 而且它们的成本很高,因为它们很难开发。

许多人缺乏任何调试能力。

在我看来,如果你是一名铁杆iOS开发者,那么你一定要购买最好的Mac并学习objective-c。这是昂贵的,需要时间,但如果这是你的道路,它是值得的。

对于偶尔使用的用户来说,租用远程Mac服务(如XCodeClub.com)会更容易一些

其他回答

你可以尝试使用HTML, JavaScript, CSS为iPhone开发网页应用。在苹果网站上查看入门信息。

如果您有一个越狱的iPhone,您可以通过Cydia将iPhone -gcc工具链安装到iPhone上,这样您就可以在iPhone上编译应用程序。通过这种方式开发的应用程序仍然可以提交到App Store。

尽管瓦尔迪兹先生说这是一个灰色地带(事实确实如此),但越狱非常容易,而且几乎没有风险。是的,它使你的保修失效,但你可以做一个恢复,他们永远不会知道。

B4i是一个新的开发工具,可以创建原生iOS应用程序。它在Windows上运行。 当需要完整编译时(在大多数情况下不需要),项目将在托管的构建器上编译。每次编译大约需要5秒。 B4i

在Windows机器上开发当然是可能的,事实上,我的第一个应用程序是专门在我当时拥有的旧戴尔Precision上开发的:)

有三条路线;

Install OSx86 (aka iATKOS / Kalyway) on a second partition/disk and dual boot. Run Mac OS X Server under VMWare (Mac OS X 10.7 (Lion) onwards, read the update below). Use a framework and/or toolset, which allows developing on Windows, like Delphi XE4 with the mac-in-cloud service, which can build without MacOS device need. This is a commercial toolset, but the component and lib support is growing. Other honorable mentions are Flutter, Xamarin and similar; which may at end need actual MacOS device for final build (but you can test on Android till then, as they're cross-platform).

第一种方法需要修改(或使用预先修改过的)Leopard映像,该映像可以安装在普通PC上。这并不像你想象的那么难,尽管你的成功/努力比率将取决于你的PC硬件与Mac硬件的匹配程度——例如,如果你在英特尔主板上运行酷睿2双核,配NVidia显卡,你会笑。如果你运行的是一台没有SSE3的AMD机器,那么它就会变得复杂一些。

如果你购买了(或已经拥有)一个版本的Leopard,那么这是一个灰色区域,因为Leopard EULA规定你只能在“Apple标签”的机器上运行它。正如许多人指出的那样,如果你在你的电脑上贴上苹果贴纸,你可能就有保险了。

第二种选择成本更高。工作站版Leopard的EULA阻止它在模拟下运行,因此,VMWare中不支持这一点。然而,Leopard服务器可以在模拟下运行,并可用于桌面目的。然而,Leopard服务器和VMWare是昂贵的。

如果你对选项1感兴趣,我建议你从Insanelymac开始,阅读OSx86部分。

我确实认为你应该考虑你投入的时间是否值得你省下的钱。对我来说,这是因为我喜欢摆弄这类东西,我是在iPhone早期测试版的时候开始的,当时苹果应用商店还没有上线。

或者,你也可以从eBay上买一台低规格的Mac Mini。你不需要太多的马力来运行SDK,如果你决定停止开发或购买更好的Mac,你可以随时出售它。

更新:无法为OS X 10.6及更早版本创建Mac OS X客户端虚拟机。苹果不允许虚拟化这些客户端操作系统。随着Mac OS X 10.7 (Lion)的推出,苹果改变了虚拟化方面的许可协议。来源:VMWare知识库

你可以使用WinChain

引用项目页面:

这是在Windows XP/Vista计算机上构建iPhone工具链的最简单方法,反过来,它可以获取你使用UIKit头文件(包含在winChain中)编写的Objective-C源代码,并将其编译成你可以在iPhone上使用的应用程序。