几个月前,我收到了来自Apple的一封令人震惊的电子邮件,告诉他们将拒绝所有不是针对iOS 4.x SDK构建的应用程序。现在我想知道是否:
1)这是一个糟糕的笑话吗?
2)如果不是:这是否意味着我的应用只会在iPhone4,iPod touch 4或任何安装了iOS 4.x的设备上运行?
我下载了最新的iOS SDK,我只能针对3.2或4.1进行构建,我相信3.2仅适用于iPad。现在我可以在安装旧操作系统的情况下扔掉我的6个iPod touch,或者我很幸运,仍然有一种方法可以为它们编码,而无需将它们全部升级到4.1。
你怎么看?真相是什么?答案 0 :(得分:7)
几个月前,我感到震惊 来自Apple的电子邮件,告诉他们 将拒绝每个不是的应用程序 针对iOS 4.x SDK构建。现在我 想知道是否:
1)这是一个糟糕的笑话吗?
不,但这是件好事。
首先,它鼓励开发人员继续使用最新的SDK。
其次,它鼓励用户更新到最新固件。 (更少的错误,更稳定,更少的安全漏洞)。
第三,它为您提供了一个固定的目标,您在提交应用时必须担心。如果Apple针对每个版本的iOS进行测试,那么批准应用程序需要花费很长时间,并且您最终会在特定设备上的特定固件版本上获得各种小错误。这将是疯狂。
2)如果不是:这是否意味着我的应用程序 只会在非常激烈的情况下运行 iPhone4,iPod touch 4等设备 任何安装了iOS 4.x的设备?
您可以在构建设置中设置任何您想要的部署目标,但我建议任何应用程序不低于3.1.x。由于(1),大多数用户使用4.x,使用3.x的比例很小,而且几乎没有人使用2.x或1.x.
我下载了最新的iOS SDK和我 只能建立3.2或4.1, 我相信3.2只适用于iPad。 现在我可以扔掉我的6个iPod 接触安装了较旧的操作系统或我 幸运的是,还有一种编码方式 对于他们没有升级他们所有 4.1。
如果你有一个较旧的iPod Touch(就像我做的那样 - 第一代)保持它(用3.1.3)来测试你的应用程序。不要扔掉它。
答案 1 :(得分:3)
事实就是苹果所说的,以及我刚刚澄清的内容。 :)
答案 2 :(得分:1)
您仍然可以开发旧设备。您只需将部署目标设置为您支持的旧iOS版本。但是,您必须重新构建最新的SDK。
您可以在官方documentation找到更多信息。
答案 3 :(得分:0)
从Xcode 4.5版开始,不再支持Arm v6的开发。这意味着您无法构建可在原始iPhone,iPhone 3G或第1代/第2代iPod Touch上运行的应用程序。如果您尝试使用3G进行构建,它会向您发出警告,说明它不是受支持的设备。
如果您需要支持这些旧设备,则必须使用Xcode 4.4.1。如果您使用该版本,您仍然可以通过设置部署目标来支持回iPhone OS 3。您可以下载older Xcode versions from Apple。
现实情况是,很少有人在iPhone OS 3上,除非你有充分的理由,否则你应该碰到iOS 4. Check the stats,看看它是否真的值得你光顾。 / p>