ios版本自动更新检测

NSString *thisVersion = [[[NSBundle mainBundle]infoDictionary] objectForKey:@"CFBundleVersion"];

AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager];

[mgr.responseSerializer setAcceptableContentTypes: [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil]];

[mgr POST:APPURL parameters:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nonnull responseObject) {

NSArray *array = responseObject[@"results"];

if (array.count != 0) {// 先判断返回的数据是否为空  没上架的时候是空的

NSDictionary *dic = array.firstObject;

NSString *versionStr = [dic objectForKey:@"version"];

NSString *trackViewUrl = [dic objectForKey:@"trackViewUrl"];

NSString *releaseNotes = [dic objectForKey:@"releaseNotes"];

if ([thisVersion compare:versionStr options:NSNumericSearch] == NSOrderedAscending) {

NSString *title = kASLocalizedString(@"Discover a new version");

NSString *cancel = kASLocalizedString(@"Cancel");

NSString *update = kASLocalizedString(@"Update");

[UIAlertView bk_showAlertViewWithTitle:[NSString stringWithFormat:@"%@:%@",title,versionStr] message:releaseNotes cancelButtonTitle:cancel otherButtonTitles:@[update] handler:^(UIAlertView *alertView, NSInteger buttonIndex) {

if (buttonIndex == 1) {

NSURL * url = [NSURL URLWithString:trackViewUrl];                    [[UIApplication sharedApplication] openURL:url];

}

}];

}

}

} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {

ETLog(@"get version failed");

}];

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容