专业java、php、iOS、C++、网页设计、平面设计、网络营销、游戏开发、前端与移动开发培训机构
检查新版本
- 当本次启动的版本号比上次退出时的版本号大,我们就认为当前这个版本是新版本
步骤
- 1.获取应用程序当前版本
// 1.获取应用程序当前版本 let currentVersion = NSBundle.mainBundle().infoDictionary!["CFBundleShortVersionString"] as! String
- 2.获取应用程序之前的版本
// 2.获取应用程序之前的版本 let sandboxVersionKey = "sandboxVersionKey" // 保存到沙盒的key let sandboxVersion = NSUserDefaults.standardUserDefaults().stringForKey(sandboxVersionKey)
- 3.判断是否是新版
let newVersion = currentVersion != sandboxVersion
- 4.是新版本,将当前版本保存
// 4. 是新版本,将当前版本保存 if newVersion { NSUserDefaults.standardUserDefaults().setObject(currentVersion, forKey: sandboxVersionKey) NSUserDefaults.standardUserDefaults().synchronize() }
- 5.返回比较结果
// 5. 返回 return newVersion
最终代码
/// 判断是否是新版本 private func isNewVersion() -> Bool { // 获取程序当前的版本 let currentVersion = Bundle.main.infoDictionary!["CFBundleShortVersionString"] as! String // 获取上次运行的版本 let key = "lastVersion" let lastVersion = UserDefaults.standard.string(forKey: key) let isNewVersion = currentVersion != lastVersion // 比较 if isNewVersion { // 新版本 // 保存新版本 UserDefaults.standard.set(currentVersion, forKey: key) UserDefaults.standard.synchronize() } // 返回 return isNewVersion }