[[UIDevice currentDevice] systemName];
的可能取值是什么?在苹果的文档中,没有给出任何可能的示例,但我只能得到iPhone OS
,即使在模拟器上也是如此。是否还有其他可能性,如果没有,为什么会存在这个属性?这是操作系统的名称,如文档所述。iOS最初被称为“iPhone OS”(在iPad之前),但我认为由于兼容性原因,他们没有改变systemName
。
将来,他们可能会在(Mac)OS X上实现[UIDevice systemName]
,在该平台上,它可能会返回Mac OS X
或OS X
。
目前,这种方法的使用相当有限,但你永远不知道苹果或其他人可能在未来生产出什么(部分)兼容的操作系统...
对于iPhone来说,苹果返回的操作系统值一直是“iPhone OS”。在某些iOS 9版本和运行iOS 10的Xcode 8之后发布的应用程序中,苹果已经将“iPhone OS”的值替换为“iOS”。
systemName
将会是@"tvOS"
,而在 watchOS 上则为"watchOS"
(通过WKInterfaceDevice.currentDevice().systemName
)。 - kennytm