我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
当前回答
在某种程度上,是的,这是可能的。你可以输入Objective-C代码并设置你的项目。您甚至可以使用gcc测试代码的C和c++部分。
你不能做的:
使用界面生成器来设置你的界面,因为它是mac专用的。(不是必需的,但推荐) 编译使用苹果Cocoa类的代码——它们在Linux上不存在。 在模拟器中测试代码——Linux中没有。 为真实设备或应用商店编译代码——所有这些都需要苹果只为OS X提供的工具。
其他回答
曾经有一个项目专门解决这个缺陷:iphone-dev
iPhone开发项目的目标是创建一个免费的、可移植的、高质量的工具链,以支持苹果iPhone和其他基于ARM/Darwin平台的嵌入式设备的开发。
至于替代工具链,Saurik的网站很有用,但对于最新的固件开发,他建议在iPhone本身上构建,并没有指出您可能需要将必要的iPhone固件文件复制到Linux环境中。这不是不可能的,只是需要额外的工作,特别是对代码签名(也有开放的替代解决方案)。
另外,看一看其他指南(对于相同的工具链),它们更有系统地处理它。
我建议还是在XCode中完成最终的构建、代码签名和打包(这可能意味着借用别人的Mac),以防你在向苹果提交应用程序时遇到问题。使用替代工具链打开了(至少在Mac上)使用XCode以外的其他ide开发应用程序的可能性,并再次使用XCode进行部署和模拟器测试。
当然,如果你确实在XCode之外的命令行中获得了代码签名/证书生成,那么你可以在实际的iPhone上安装证书并在那里进行测试(通过iTunes安装带有证书的应用程序)。
有一个叫做Rhodes的框架。
The concept is based on Ruby on Rails and you develop your mobile app in Ruby and HTML, and you can write your code in a Linux environment. You can then create an account at Rhohub, where you add the code (through GitHub), and it allows you to compile it for iPhone, Blackberry, Android, Windows Mobile and Symbian, all off the same code. You don't have to code in Objective-C for iPhone, nor Java for Android, etc. It does the conversions for you. All you need to do is stick to the Rules for creating an iPhone application (or the Phone's you want to develop for) so it can be accepted at iTunes (or the equivalent market).
这将允许你将应用程序添加到iTunes中。
然而,我还没有找到任何模拟器,这意味着要测试你的应用,你需要把它放在iPhone上,这是一项任务。
我正在使用这个选项,因为我想为所有手机创建应用程序,我已经使用Ruby on Rails。如果你只是想为iPhone开发一款应用,那就投资Mac吧。
希望这能有所帮助。
我建议使用mac,因为ios模拟器非常适合在应用的早期阶段进行测试。但我知道有一家与我们合作的小公司使用Unity进行开发,所以他们不需要大量的mac。这样,他们只需要一个mac的办公室,这只是编译最终版本。这也意味着它适用于android,但这取决于你的建筑,因为它是一个游戏引擎。你可能想要使用像Sencha Touch Mobile这样的框架来研究web应用
团结:http://unity3d.com/ Sencha Touch: http://www.sencha.com/products/touch/
你说得对,非越狱手机仅限于苹果应用商店,苹果“有权”执行任何规则,这完全是非自由领域。 然而,在开发过程中,开发者根本不需要与苹果打交道。您可以使用例如rsync将代码上传到设备并进行测试。