一.获取当前手机运行的版本信息,通过info.plist文件的bundle version获取
NSString *versionValueStringForSystemNow=[[NSBundle mainBundle].infoDictionary valueForKey:@"CFBundleShortVersionString"];二.获取AppStore中的App版本信息
// 请求的url 固定格式https://itunes.apple.com//lookup?id= id为iTunes上App的唯一id // 例如微信iTunes上的链接为:https://itunes.apple.com/cn/app/wei-xin/id414478124?mt=8 id就为414478124 NSString *urlStr = [NSString stringWithFormat:@"https://itunes.apple.com//lookup?id=%@", AppiTunesId]; [[YLSingleton sharedYLSingleton] GET:urlStr parameters:nil progress:^(NSProgress *progress) { } success:^(NSURLSessionDataTask *task, id responseObject) { NSDictionary *infoDic = [responseObject[@"results"] firstObject]; // 最新版本号 NSString *iTunesVersion = infoDic[@"version"]; // 应用程序介绍网址(用户升级跳转URL) NSString *trackViewUrl = infoDic[@"trackViewUrl"]; } failure:^(NSURLSessionDataTask *task, NSError *error) { }]; 解析从AppStore获取到的App信息(重点介绍几个使用的) minimumOsVersion = "8.0"; //App所支持的最低iOS系统 fileSizeBytes = ; //应用的大小 releaseDate = ""; //发布时间 trackCensoredName = ""; //审查名称 trackContentRating = ""; //评级 trackId = ; //应用程序ID trackName = ""; //应用程序名称 trackViewUrl = ""; //应用程序介绍网址 需要更新跳转的网址 version = "4.0.3"; //版本号 三.判断当前所使用的是否为最新版本 NSString *currentVersion = [UIApplication sharedApplication].version; // 最新版本 NSString *iTunesVersion = infoDic[@"version"]; // 应用程序介绍网址(用户升级跳转URL) NSString *trackViewUrl = infoDic[@"trackViewUrl"]; // 判断版本号是否相同 不同就更新(简单介绍, if语句里面看项目需要自己发挥) if (![currentVersion isEqualToString:iTunesVersion]) { NSLog(@"不是最新版本,需要更新"); [[UIApplication sharedApplication] openURL:[NSURL URLWithString:trackViewUrl] options:@{} completionHandler:^(BOOL success) { }]; } else { NSLog(@"已是最新版本,不需要更新!"); }