【发布时间】:2010-12-23 15:40:13
【问题描述】:
我想在应用程序中检测 iPhone OS 版本,您也可以发布示例代码。我尝试使用没有帮助的宏。
【问题讨论】:
标签: iphone objective-c cocoa-touch
我想在应用程序中检测 iPhone OS 版本,您也可以发布示例代码。我尝试使用没有帮助的宏。
【问题讨论】:
标签: iphone objective-c cocoa-touch
如果要条件编译,则需要使用宏:
#if __IPHONE_8_0
// Works on >= version 8.0
#else
// Works on < version 8.0
#endif
或者,要在运行时检查,请使用:
float ver = [[[UIDevice currentDevice] systemVersion] floatValue];
if (ver >= 8.0) {
// Only executes on version 8 or above.
}
【讨论】:
除了其他答案中给出的编译时检查之外,您还可以使用 Swift 的 @available 属性来添加从特定操作系统版本开始的新功能。
if (@available(iOS 13.4, *)) {
// Only executes above version 13.4.
}
Here 是对操作系统版本检查和使用演变的一个不错的总结。
【讨论】: