现在我正在使用这样的代码:
func osVersion() -> String {
let osVersion = Foundation.ProcessInfo.processInfo.operatingSystemVersion
let majorVersion = osVersion.majorVersion
let minorVersion = osVersion.minorVersion
if majorVersion == 10 && minorVersion == 10 {
return "Yosemite"
} else if majorVersion == 10 && minorVersion == 11 {
return "El Capitan"
} else if majorVersion == 10 && minorVersion == 12 {
return "Sierra"
} else if majorVersion == 10 && minorVersion == 13 {
return "High Sierra"
} else {
return "Unknown"
}
}
但如果它是新的更新,则此代码将返回"未知"
那么,是否有可能以编程方式获得系统商业名称?
答案 0 :(得分:1)
Apple从版本10.10弃用了operatingSystemName Api。
在基金会> NSProcessInfo> ProcessInfo
@available(OSX, introduced: 10.0, deprecated: 10.10, message: "-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead")
open func operatingSystemName() -> String
其评论中建议的api只返回版本字符串“Version 10.13.1(Build 17B1003)”而不是商业名称
open var operatingSystemVersionString: String { get }