2

苹果在 iOS7 过渡指南中写了一个片段来检查 iOS 版本

if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
   // Load resources for iOS 6.1 or earlier
} else {
   // Load resources for iOS 7 or later
}

但是,如果 Apple 推出另一个 iOS6 版本,例如 6.2 呢?将自动加载 iOS7 版本。
最好是这样的:

if (floor(NSFoundationVersionNumber) >= NSFoundationVersionNumber_iOS_7_0) {
   // Load resources for iOS 7 or later
} else {
   // Load resources for iOS 6.1 or earlier
}

不幸的是,这个基金会号码不可用。您认为Apple建议的方法安全吗?

4

2 回答 2

3

NSFoundationVersionNumber_iOS_6_1 == 993.00,没有问题。但是 NSFoundationVersionNumber_iOS_7_0 == 1047.22 ,所以 floor() 函数可能不对~

于 2014-03-19T01:08:35.443 回答
1

iOS 6.2 应该具有 6.1 的所有 API 功能,这样才能正常工作。这些测试主要是为了了解如何做某事(即存在哪些 API 功能)。

于 2013-10-27T09:08:11.997 回答