4

好吧,我想我的问题真的很简单。

我使用 NSFoundationVersionNumber 来检查我的应用程序的版本,并使其与 iOS6 和 iOS7 兼容。

if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_6_1 ){
//Here goes the code for iOS 7 
}

else if (NSFoundationVersionNumber == NSFoundationVersionNumber_iOS_6_1){
//Here goes the code for iOS 6.1
}

好吧,据我所知,Apple 已经发布了 6.1.X 版本。所以,使用第二个“else-if”语句,我制作的兼容版本列表中排除了 6.1.X 版本?如果答案是肯定的,那么我如何确定设备是否在 6.1.X 版本上运行?

非常感谢你 :)

4

3 回答 3

6

如果NSFoundationVersionNumber == NSFoundationVersionNumber_iOS_6_1为 true,则设备具有 6.1.X。

如果NSFoundationVersionNumber == NSFoundationVersionNumber_iOS_6_0为 true,则设备具有 6.0.X。

为 true时NSFoundationVersionNumber < NSFoundationVersionNumber_iOS_6_0,设备为 5.1.X 及以下版本。

NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_6_1为 true 时,设备具有 7.0 及更高版本。

于 2013-11-15T00:04:30.510 回答
2

苹果忘记为 iOS 7、10.8 和 10.9 提供 NSFoundationVersionNumber 常量,但您可以通过 NSLogging 注销您的 NSFoundationVersionNumer 来获取这些数字(它会为您提供当前操作系统的 NSFoundationVersionNumber)

于 2013-12-12T18:25:01.723 回答
2

在 iOS 8 中,Apple 现在在NSProcessInfoNSOperatingSystemVersion中提供结构

您可以将它与 一起使用isOperatingSystemAtLeastVersion:,或者只检查 3 个字段以准确了解哪个系统版本正在运行您的应用程序。

于 2014-10-14T18:26:11.513 回答