一.判断是不是WiFi,如果是WiFi则提醒用户更新
1.
2.
////////////////////////////////////////////////////////////////版本更新开始
//判断是不是WiFi,如果是WiFi则提醒用户更新
[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
if ([AFStringFromNetworkReachabilityStatus(status) isEqualToString:@"Reachable via WiFi"]) [self update];
}];
[[AFNetworkReachabilityManager sharedManager] startMonitoring];
/////////////////////////////////////////////////////////////////版本更新结速
二.把更新的代码重构到一个方法里
- (void)update {
NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];
NSString *oldVersion = infoDict[@"CFBundleShortVersionString"];
NSString *url = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@", @"你的appID"];
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
//申明返回的结果是json类型
manager.responseSerializer = [AFJSONResponseSerializer serializer];
//申明请求的数据是json类型
manager.requestSerializer = [AFJSONRequestSerializer serializer];
//如果报接受类型不一致请替换一致text/html或别的
// manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/javascript", nil nil];
// manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/javascript"];
[manager POST:url parameters:nil progress:^(NSProgress * _Nonnull uploadProgress) {
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSNumber *number = responseObject[@"resultCount"];
if (number.intValue == 1) {
NSString *newVersion = responseObject[@"results"][0][@"version"];
NSString *updateMsg = responseObject[@"results"][0][@"releaseNotes"];
if (![newVersion isEqualToString:oldVersion]) {
//图2样式
//UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"有新版本可供更新" message:updateMsg preferredStyle:UIAlertControllerStyleAlert];
//图1样式
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"有新版本可供更新" message:nil preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"更新" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"URLString"]];
}];
UIAlertAction *cancleAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:nil];
[alertController addAction:cancleAction];
[alertController addAction:okAction];
[self presentViewController:alertController animated:YES completion:nil];
}
}
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"%@", error);
}];
}
上面的URLString是你的应用在app store的链接:打开iTunes,搜索到你的应用后右单击应用的logo,如下图,选择拷贝链接.
上面的appID就是链接中id后面的数字.