2

我即将开发我的第一个 iOS 应用程序,就操作系统支持而言,我应该针对 iOS 6 还是 iOS 5 构建?当新的 iOS 即将发布时,典型的行业惯例是什么?另外,向后兼容性如何?我的意思是,如果我为 5 构建,运行 6 的用户是否也能够在从 App Store 下载它时安装和运行它?此外,对于 iPhone 和 iPad 用户的新 iOS 版本,升级与不升级的典型统计数据是什么。任何关于这个主题的博客/参考资料或个人经验都会很棒!

4

2 回答 2

2

您交付此应用程序的时间表是什么?除非您想利用 iOS 6 的特定功能,否则在短期内可能会更好地针对 iOS 6,但要注意不要使用 iOS 6 功能。这将能够在大多数设备上安装和运行。

如果您为 5 构建,它应该仍然能够在 iOS 6 上运行。

iOS 的升级速度相当快。请参阅我在此问题中的回答:

iOS 6 发布后继续支持 iOS 4.x 是否值得?

于 2012-09-17T22:20:56.933 回答
2

您可能会使用 iOS6 SDK快速进行开发。

但是使用 iOS6 SDK 并不意味着你的应用程序只能兼容 iOS6。这仅意味着您将能够使用 iOS6 中存在的所有方法,包括以前 API 中已经存在的方法(例如 iOS5 中),以及iOS6 中引入的新 API。

因此,即使您使用 iOS6 SDK,只要您使用 iOS5 中已经存在的方法(大多数方法),您的应用程序也将与 iOS5 和 iOS6 兼容。

  • 如果您使用 iOS5 中已经存在并且仍然存在于 iOS6 中的方法(这是 SDK 的大多数方法),您的应用程序将在 iOS5 和 iOS6 中运行。但是您不会利用 iOS6 中引入的 iOS5 中不存在的新功能,因为 iOS5 用户在他们的操作系统中不会拥有这些功能。
  • 您可以使用 iOS6 中引入但 iOS5 中不存在的新方法,但是您要么放弃对 iOS5 的支持,要么在使用之前确保检查方法的可用性。例如,如果您打算拥有一个使用某些仅在 iOS6 中引入而在 iOS5 中不存在的类或方法的按钮,请首先检查该类或方法的可用性,只有在可用时才调用它. 如果类/方法在他的操作系统版本中不可用,您可以通知用户此功能对他不可用,鼓励他升级其操作系统版本。

有关更多信息,我强烈建议您阅读Apple 文档中的SDK 兼容性指南,其中解释了一切:SDK 版本与您支持的操作系统版本之间的差异,如何检查是否新引入的方法可以在最新的SDK中使用(即如果用户正在运行iOS5,则防止使用iOS5中不存在的方法),等等。

于 2012-09-17T22:24:20.213 回答