我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?

有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?


当前回答

这个问题的答案取决于你是否想要开发通过iPhone商店发行的应用。如果你没有,也不介意为“越狱”的iPhone人群开发——那么从Linux开发是可能的。

看看这个家伙的页面,有一个全面的(如果有点复杂)指南,告诉你该怎么做:

http://www.saurik.com/id/4

其他回答

如果你的应用不是用Xcode开发的,你就永远不会得到苹果的批准。从来没有。如果你真的入侵了SDK在Linux上开发,而苹果发现了,当你被服务时,不要感到惊讶。我是ADC和iPhone开发者计划的成员。相信我,苹果对此非常认真。

不要冒险,买一台Macbook或Mac mini(是的,mini可以运行Xcode -虽然很慢-如果你用mini的话,可以提高RAM)。此外,虽然我见过OS X在VMware上运行,但我从未见过有人在VM上运行Xcode。祝你好运。在你麻烦你之前,我会先看一下EULA。

PS:读完以上,是的,我同意,如果你真的入侵SDK并在Linux上开发,至少要在Mac上完成最终的打包,并通过Mac提交。苹果不会逐行运行代码,所以我怀疑他们会发现这一点。但是,伙计,那有很多如果和工作。尽管这样做很有趣。:)

我建议使用mac,因为ios模拟器非常适合在应用的早期阶段进行测试。但我知道有一家与我们合作的小公司使用Unity进行开发,所以他们不需要大量的mac。这样,他们只需要一个mac的办公室,这只是编译最终版本。这也意味着它适用于android,但这取决于你的建筑,因为它是一个游戏引擎。你可能想要使用像Sencha Touch Mobile这样的框架来研究web应用

团结:http://unity3d.com/ Sencha Touch: http://www.sencha.com/products/touch/

曾经有一个项目专门解决这个缺陷:iphone-dev

iPhone开发项目的目标是创建一个免费的、可移植的、高质量的工具链,以支持苹果iPhone和其他基于ARM/Darwin平台的嵌入式设备的开发。

我曾尝试将cocos2d-iphone移植到GNUstep,这样你就可以基于cocos2d开发游戏了。但是对于发布,你需要一个mac. cocos2d-GNUstep。

你可能能够在Linux机器上编写代码,最终会在iPhone或iPad上运行,但最终你需要一台Mac来测试或将代码部署到iPhone或提交到应用程序商店。所以最终你还是需要一台Mac电脑,所以你也可以用苹果提供的所有工具在Mac电脑上工作。除了Xcode和Objective-C,还有其他选择,比如Monotouch——但这些也利用了苹果的工具。

你可以在Linux上的虚拟机上运行OS X。然而,我应该指出,这将打破OSX许可协议,即使你购买了OSX的副本-因为它只被授权在苹果硬件上运行。

很抱歉告诉你这个消息——围绕iPhone/iPad的生态系统是被严格控制的。

编辑:一个主要的例外是为iPhone编写web应用程序。iPhone上有一些优秀的网页应用,它们的用户体验几乎和原生应用一样好。但是我把你的问题理解为原生应用开发。尽管用户可以创建一个图标来启动Web应用程序,但它们仍然是“二等”公民。