较旧的iOS设备可以运行使用较新版本的iOS SDK构建的应用吗?

时间:2012-06-30 14:09:02

标签: iphone xcode sdk

如果我在XCode中使用(默认)iOS 5.1 SDK构建应用程序并将其分发到appstore,那么用户能够下载并运行应用程序吗?

2 个答案:

答案 0 :(得分:1)

这取决于您在应用中包含的功能:如果您使用仅在iOS5中可用的功能,例如UIPageController,则不会,他们将无法运行它。但是,如果您不使用iOS 5的任何功能,那么它很可能是正常的。

答案 1 :(得分:0)

好的,让我比奥马尔更准确地回答你:

在XCode中,您可以定义用于编译应用程序的SDK(应该始终是“最新的”SDK,当前为5.1)以及您应用程序将与之一起运行的最低操作系统版本。 您应始终在定义的最低操作系统版本的所有(主要)操作系统版本上测试您的应用程序。 您可以在代码中对当前iOS版本做出反应,并根据当前版本使用不同的功能,并使用如下语句:

if ([UIDevice systemVersionValue] >= 4.2f) {
 // code for OSes at least as new as 4.2
} else {
  // code for older OSs
}

如果您希望应用程序获得最大曝光率,则应尝试支持Apple仍支持的所有iOS版本。目前,那是iOS 4.0及更新的AFAIK。鉴于iOS用户的更新率非常高,所以旧的一切都没有多大意义。