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

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


当前回答

你不需要拥有一台Mac,也不需要学习Objective-C。您可以在不同的环境中开发,然后编译成Objective-C。

运行osx 10.6为iPhone和iPad开发(snow leopard)

我们的一名开发人员写的这篇文章相当全面地介绍了在Windows上使用iBoot安装OS X Snow Leopard,然后安装Vmware(有说明),然后启动iPhone开发环境……还有一些额外有趣的东西。对我很有帮助。

希望这能有所帮助。它使用Phonegap,所以你可以同时在多个智能手机平台上开发。

其他回答

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

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

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

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

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

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

Oracle VirtualBox允许用户在虚拟机中安装Mac OS X。如果你觉得舒服,你可以用这种方式来使用Xcode。这是合法的,如果你“双引导”你的mac到windows,然后在windows(或linux)中安装VirtualBox。

其他可能性是交叉编译器,如Appcelerator Titanium (HTML, CSS和JavaScript)或MonoTouch (. net)。

你不需要拥有一台Mac,也不需要学习Objective-C。您可以在不同的环境中开发,然后编译成Objective-C。

运行osx 10.6为iPhone和iPad开发(snow leopard)

我们的一名开发人员写的这篇文章相当全面地介绍了在Windows上使用iBoot安装OS X Snow Leopard,然后安装Vmware(有说明),然后启动iPhone开发环境……还有一些额外有趣的东西。对我很有帮助。

希望这能有所帮助。它使用Phonegap,所以你可以同时在多个智能手机平台上开发。

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

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

如果你想让它合法,你有两个选择,基于云的Mac解决方案或跨平台开发工具。 如果你不关心法律问题,你可以考虑hackintosh方法或虚拟机。如果你有一台不错的PC,运行虚拟机将是最简单的方法。你可能永远不知道在hackintosh上哪些硬件会有驱动程序问题。

我尝试过所有这些方法,它们都有优缺点,但对于第二种方法,我感到有点内疚。我开发应用程序是为了谋生,我不想为此宰割别人。

如果你正在做一个小项目,基于云计算的mac可能会很有用。租一段时间,开发你的项目,然后你就可以走了。不要费神去学任何新东西。

然而,如果你的项目越来越大,跨平台框架似乎是唯一的选择。关键是你需要明智地选择。现在有很多混合框架,但它们的功能可以用一句话概括为“在应用程序包装中显示网页”,开发人员使用混合框架的负面体验也影响了原生框架。

I tried three of these (Titanium, Smartface and Xamarin) and they all claim to produce "real native output" and in my opinion their claims are correct. You need to test and see it yoursrlf, it's not easy to describe the native feeling. In a previous comment, it was indicated that it takes some effort to learn these platforms, but once you get to know them, you can develop not just iOS applications but Android applications as well, all with the common code base. And of course, they are much cheaper than a cloud Mac. Some of them are even free. You would need a Mac only for store submission.

如果你懂JavaScript,可以试试Titanium和Smartface;如果你懂c#,可以试试Xamarin。需要注意的是,对于设备模拟器,Titanium依赖于Mac,但Smartface有一个用于Windows开发的模拟器应用程序,它比我预期的要好。另一方面,Xamarin需要你的网络中有一台Mac。