按照苹果的建议检查iOS版本



苹果在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
}

不幸的是,这个基础编号不可用。你认为苹果建议的方法安全吗?

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

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

最新更新