我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
当前回答
在某种程度上,是的,这是可能的。你可以输入Objective-C代码并设置你的项目。您甚至可以使用gcc测试代码的C和c++部分。
你不能做的:
使用界面生成器来设置你的界面,因为它是mac专用的。(不是必需的,但推荐) 编译使用苹果Cocoa类的代码——它们在Linux上不存在。 在模拟器中测试代码——Linux中没有。 为真实设备或应用商店编译代码——所有这些都需要苹果只为OS X提供的工具。
其他回答
到目前为止,这似乎是真的。苹果提供的唯一SDK仅针对macOS环境。我一直对此感到不安,但我现在正在考虑买一台mac电脑,只是为了开发iPhone。我真的不喜欢他们正在做的事情,我希望有一个好的SDK出现在其他环境中,比如Linux和Windows。
关于SDK的障碍:
The iPhone SDK and free software: not a match Apple's recently released a software development kit (SDK) for the iPhone, but if you were hoping to port or develop original open source software with it, the news isn't good. Code signing and nondisclosure conditions make free software a no-go. The SDK itself is a free download, with which you can write programs and run them on a software simulator. But in order to actually release software you've written, you must enroll in the iPhone Developer Program -- a step separate from downloading the SDK, and one that requires Apple's approval.
我认为他们认为只有macOS用户才能为他们的手机编写程序是相当精英的,而且如果你想发布你的东西,你需要购买100美元的许可证,这真的让业余程序员更加困难。不过,如果这是你需要做的,我打算跳过他们的圈子;我真的很想在我的iPhone上开发一些东西。
如果你珍惜你的时间,买一台Mac吧!我对Linux开发选项的了解还不够多,无法提供一个可行的解决方案,但似乎建议的方法涉及一些相当迂回的工作。如果你打算认真编写和销售iPhone应用程序,我认为你可以很容易地收回购买Mac Mini或Macbook的成本。: -)
至于替代工具链,Saurik的网站很有用,但对于最新的固件开发,他建议在iPhone本身上构建,并没有指出您可能需要将必要的iPhone固件文件复制到Linux环境中。这不是不可能的,只是需要额外的工作,特别是对代码签名(也有开放的替代解决方案)。
另外,看一看其他指南(对于相同的工具链),它们更有系统地处理它。
我建议还是在XCode中完成最终的构建、代码签名和打包(这可能意味着借用别人的Mac),以防你在向苹果提交应用程序时遇到问题。使用替代工具链打开了(至少在Mac上)使用XCode以外的其他ide开发应用程序的可能性,并再次使用XCode进行部署和模拟器测试。
当然,如果你确实在XCode之外的命令行中获得了代码签名/证书生成,那么你可以在实际的iPhone上安装证书并在那里进行测试(通过iTunes安装带有证书的应用程序)。
曾经有一个项目专门解决这个缺陷:iphone-dev
iPhone开发项目的目标是创建一个免费的、可移植的、高质量的工具链,以支持苹果iPhone和其他基于ARM/Darwin平台的嵌入式设备的开发。
这个问题的答案取决于你是否想要开发通过iPhone商店发行的应用。如果你没有,也不介意为“越狱”的iPhone人群开发——那么从Linux开发是可能的。
看看这个家伙的页面,有一个全面的(如果有点复杂)指南,告诉你该怎么做:
http://www.saurik.com/id/4