版本升级描述:两种方式
第一种:不需要服务端
客户端直接从iTunes里面获取最新版本与本地版本比较,
若大于本地版本,则升级;若小于或等于则不升级
第二种:需要服务端交互
每次提交版本/升级前把本地提交给服务端;由服务端控制是否更新:
服务端把最新版本号发给客户端,以及升级的详细信息,升级状态:强制升级、普通升级、已经是最新版本,不需要升级。
//获取本地版本
NSDictionary *appInfoDic = [[NSBundle mainBundle]infoDictionary];
NSString *appVersion = appInfoDic[@"CFBundleShortVersionString"];
DEF_DEBUG(@"%@",appVersion);
#pragma mark -appstore最新版本号//url中id换成 你们的应用id就行了
- (void)getLatestVersion
{
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://itunes.apple.com/lookup?id=1144308491"]];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
if (error) {
DEF_DEBUG(@"%@",error.localizedDescription);
}
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
DEF_DEBUG(@"%@",dic);
NSString *currentVersion = dic[@"results"][0][@"version"];
// onlineVersionStr = currentVersion;
// updateDetail = dic[@"results"][0][@"releaseNotes"];
}];
[dataTask resume];
}