iOS 获取当前app的 App Store 版本号
NSString * strurl = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@",AppIDs];//替换为自己App的ID NSURLSession *session=[NSURLSession sharedSession]; NSURL *url = [NSURL URLWithString:strurl]; //3.创建可变的请求对象 NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:url]; NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error){ //8.解析数据 NSDictionary *dict=[NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil]; NSArray * results = dict[@"results"]; NSDictionary * dic = results.firstObject; NSString * lineVersion = dic[@"version"];//版本号 NSString * releaseNotes = dic[@"releaseNotes"];//更新说明 NSString * trackViewUrl = dic[@"trackViewUrl"];//链接 NSLog(@"App store版本号:%@",lineVersion); NSLog(@"更新说明:%@",releaseNotes); NSLog(@"App下载链接:%@",trackViewUrl); NSCharacterSet *nonDigitCharacterSet = [[NSCharacterSet decimalDigitCharacterSet] invertedSet]; //获取字符串中的数字 self.applocalversion = [[self.applocalversion componentsSeparatedByCharactersInSet:nonDigitCharacterSet] componentsJoinedByString:@""];//本地的app版本 lineVersion = [[lineVersion componentsSeparatedByCharactersInSet:nonDigitCharacterSet] componentsJoinedByString:@""];//App store的app版本 NSLog(@"结果是本地的app版本:%@ \n App store的app版本:%@ ",self.applocalversion,lineVersion); // 获取NSUserDefaults对象 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:lineVersion forKey:@"App_store_version"]; [defaults synchronize]; //如果要立刻保存就需要这行代码 if ([lineVersion integerValue]>[self.applocalversion integerValue]) {//App store的app版本>//本地的app版本 时要提醒升级 dispatch_async(dispatch_get_main_queue(), ^{ self.nav.tabBarItem.badgeValue = @"new"; }); }else{ NSLog(@"111没有新版本不用更新提示"); } }]; //7.执行任务 [dataTask resume];
分类:
oc学习笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix