iOS模拟器iOS版

时间:2013-07-03 12:34:54

标签: ios objective-c ios-simulator

有没有办法检测你正在运行的iOS模拟器。即运行5.1与6.1之间的差异。

使用[[UIDevice currentDevice] systemVersion]返回x86,所以我无法确定6.1模拟器和7.0模拟器之间的区别。

3 个答案:

答案 0 :(得分:0)

您应该查看可用性

相关声明均在

Availability.h AvailabilityInternal.h

#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_6_0
  // Here we go with iOS 6++
#else
  // This is the old way
#endif

答案 1 :(得分:0)

[[UIDevice currentDevice] systemVersion]应该为您提供所需的信息。但是,这不应该用于逻辑。它被设计为用户可呈现的字符串。

如果您想做出逻辑决策,您应该根据功能来做。例如,在使用它们之前检查是否存在潜在弱符号,而不是根据系统版本做出决策。

答案 2 :(得分:0)

那很容易!

快速版本:

if #available(iOS 11.0, *) {
} else {
}

Objective-C版本:

if (@available(iOS 11.0, *)) {
} else {
}