美文网首页
Swift 获取、判断 系统版本号

Swift 获取、判断 系统版本号

作者: 跃文 | 来源:发表于2019-11-22 09:40 被阅读0次

    1. 通过UIDevice获取版本号

    //获取当前字符串类型的版本号信息,一般不会用作版本号判断
    let sysVersionString = UIDevice.current.systemVersion
    
    注:  
    Swift 中不建议使用方法4的 systemVersion,因为 UIDevice 在 macOS 中不存在,不能在所有平台上使用同样的代码路径。
    macOS中没有UIDevice可使用NSAppKitVersionNumber
    

    2. 判断系统版本号

    2.1 #available (常用)
    if #available(iOS 8.0, *) {
        //系统版本高于8.0
    } else {
        //系统版本低于8.0
    }
    // 电视系统版本判断
    if #available(tvOS 1.0, *) {  }  else {  }
    // 电脑系统版本判断
    if #available(OSX 10.11, *) {  }   else {  }
    // 手表系统版本判断
    if #available(watchOS 1.0, *) {  }  else {  }
    
    // 同时判断多个系统的版本的写法
    if #available(iOS 9.0, macOS 10,*) {   } else {  }
    
    
    2.2 利用ProcessInfo来判断是否高于指定的版本号 (感觉较麻烦)
    /*majorVersion:主版本号;minorVersion:次版本号;patchVersion:最后一位小版本号*/
    let systemVersion =  OperatingSystemVersion(majorVersion: 8, minorVersion: 0, patchVersion: 0)
    if ProcessInfo.processInfo.isOperatingSystemAtLeast(systemVersion) {
      //系统版本高于8.0
    } else {
      //系统版本低于8.0
    }
    
    2.3 通过系统宏定义的Double类型版本号进行判断 (效率高)
    if NSFoundationVersionNumber >= NSFoundationVersionNumber_iOS_8_0 {
      //系统版本高于8.0
    } else {
      //系统版本低于8.0
    }
    
    或自定义
    let iOS8 = floor(NSFoundationVersionNumber) > floor(NSFoundationVersionNumber_iOS_7_1)
    let iOS7 = floor(NSFoundationVersionNumber) <= floor(NSFoundationVersionNumber_iOS_7_1)
    

    相关文章

      网友评论

          本文标题:Swift 获取、判断 系统版本号

          本文链接:https://www.haomeiwen.com/subject/vrrfwctx.html