Swift 是否可以获取macOS商业系统名称?

Swift 是否可以获取macOS商业系统名称?,swift,macos,Swift,Macos,现在我使用的代码如下: func osVersion() -> String { let osVersion = Foundation.ProcessInfo.processInfo.operatingSystemVersion let majorVersion = osVersion.majorVersion let minorVersion = osVersion.minorVersion if majorVersion == 10 &&

现在我使用的代码如下:

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"
    }
}
但是如果是新的更新,这个代码将返回未知


那么,是否可以通过编程方式获取系统商业名称?

苹果公司已弃用的10.10版operatingSystemName Api

<基础> NSpRealFiels> PrimeFiels

@available(OSX, introduced: 10.0, deprecated: 10.10, message: "-operatingSystemName always returns NSMACHOperatingSystem, use -operatingSystemVersionString instead")

open func operatingSystemName() -> String
注释中建议的api只返回版本字符串,即版本10.13.1 Build 17B1003,而不是商业名称

open var operatingSystemVersionString: String { get } 

不相关的建议,你可以在一个元组上使用switch,比如switch majorVersion,minorVersion{case 10,10:return Yosemite…}是的,你是对的,如果你愿意的话,它会更快捷=叫我Kludge船长,但它确实会出现在system_profiler-detailLevel full>sp.txt中,如果你愿意的话。。。不幸的是,它没有出现在那里=