Swift3.0获取APP版本号,提示用户升级

获取当前版本号(版本号是字符串)

Swift2.3:
let currentVersion = NSBundle.mainBundle().infoDictionary!["CFBundleShortVersionString"] as! String

Swift3.0:
let currentVersion = Bundle.main.infoDictionary!["CFBundleShortVersionString"] as! String
 
 
  • 1
  • 2
  • 3
  • 4
  • 5

获取历史的版本号(从沙盒中获取)

?? : 如果没有值,就让他等于空(“”)

Swift2.3:
let sandboxVersion =  NSUserDefaults.standardUserDefaults().objectForKey("CFBundleShortVersionString") as? String ?? ""
Swift3.0:
let sandboxVersion = UserDefaults.standard.object(forKey: "CFBundleShortVersionString") as? String ?? ""

比较当前版本号和以前版本号

Swift2.3:
if currentVersion.compare(sandboxVersion) == NSComparisonResult.OrderedDescending {

        //存储当前的版本到沙盒
        NSUserDefaults.standardUserDefaults().setObject(currentVersion, forKey: "CFBundleShortVersionString")
        //获取到的当前版本 > 之前的版本 = 有新版本
        return true
    }
    //获取到的当前版本 <= 之前的版本 = 没有新版本
    return false
}

Swift3.0:
if currentVersion.compare(sandboxVersion) == ComparisonResult.orderedDescending {

        //存储当前的版本到沙盒
        UserDefaults.standard.set(currentVersion, forKey: "CFBundleShortVersionString")
        //获取到的当前版本 > 之前的版本 = 有新版本
        return true
    }
    //获取到的当前版本 <= 之前的版本 = 没有新版本
    return false
}

 
 
   
   
func versionCheck(){ let infoDictionary = NSBundle.mainBundle().infoDictionary let appDisplayName:AnyObject? = infoDictionary["CFBundleDisplayName"] //程序名称 let majorVersion :AnyObject? = infoDictionary ["CFBundleShortVersionString"]//主程序版本号 let minorVersion :AnyObject? = infoDictionary ["CFBundleVersion"]//版本号(内部标示) //设备信息 let iosVersion : NSString = UIDevice.currentDevice().systemVersion //ios版本 let identifierNumber = UIDevice.currentDevice().identifierForVendor //设备udid let systemName = UIDevice.currentDevice().systemName //设备名称 let model = UIDevice.currentDevice().model //设备型号 let localizedModel = UIDevice.currentDevice().localizedModel //设备区域化型号如A1533 let appVersion = majorVersion as! String print(appVersion) }
作者:小黑Swift 链接:http://www.jianshu.com/p/895bd97713c5 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
   
   
func versionCheck(){ let infoDictionary = NSBundle.mainBundle().infoDictionary let appDisplayName:AnyObject? = infoDictionary["CFBundleDisplayName"] //程序名称 let majorVersion :AnyObject? = infoDictionary ["CFBundleShortVersionString"]//主程序版本号 let minorVersion :AnyObject? = infoDictionary ["CFBundleVersion"]//版本号(内部标示) //设备信息 let iosVersion : NSString = UIDevice.currentDevice().systemVersion //ios版本 let identifierNumber = UIDevice.currentDevice().identifierForVendor //设备udid let systemName = UIDevice.currentDevice().systemName //设备名称 let model = UIDevice.currentDevice().model //设备型号 let localizedModel = UIDevice.currentDevice().localizedModel //设备区域化型号如A1533 let appVersion = majorVersion as! String print(appVersion) }
作者:小黑Swift 链接:http://www.jianshu.com/p/895bd97713c5 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

   
   
func versionCheck(){ let infoDictionary = NSBundle.mainBundle().infoDictionary let appDisplayName:AnyObject? = infoDictionary["CFBundleDisplayName"] //程序名称 let majorVersion :AnyObject? = infoDictionary ["CFBundleShortVersionString"]//主程序版本号 let minorVersion :AnyObject? = infoDictionary ["CFBundleVersion"]//版本号(内部标示) //设备信息 let iosVersion : NSString = UIDevice.currentDevice().systemVersion //ios版本 let identifierNumber = UIDevice.currentDevice().identifierForVendor //设备udid let systemName = UIDevice.currentDevice().systemName //设备名称 let model = UIDevice.currentDevice().model //设备型号 let localizedModel = UIDevice.currentDevice().localizedModel //设备区域化型号如A1533 let appVersion = majorVersion as! String print(appVersion) }
作者:小黑Swift 链接:http://www.jianshu.com/p/895bd97713c5 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值