iOS基础(六)——获取当前版本,比较更新版本

1、版本的比较

//处理版本
-(void)VersonUpdate{
    //定义的app的地址
    NSString *urld = [NSString stringWithFormat:@"http://itunes.apple.com/lookup?id=%@",@"你的id"];
    
    //网络请求app的信息,主要是取得我说需要的Version
    NSURL *url = [NSURL URLWithString:urld];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
                                                           cachePolicy:NSURLRequestReloadIgnoringCacheData
                                                       timeoutInterval:10];
    [request setHTTPMethod:@"POST"];
    
    NSURLSession *session = [NSURLSession sharedSession];
    
    NSURLSessionDataTask *task = [session dataTaskWithURL:url completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
        NSMutableDictionary *receiveStatusDic=[[NSMutableDictionary alloc]init];
        if (data) {
            
            //data是有关于App所有的信息
            NSDictionary *receiveDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
            if ([[receiveDic valueForKey:@"resultCount"] intValue]>0) {
                
                [receiveStatusDic setValue:@"1" forKey:@"status"];
                [receiveStatusDic setValue:[[[receiveDic valueForKey:@"results"] objectAtIndex:0] valueForKey:@"version"]   forKey:@"version"];
                
                //请求的有数据,进行版本比较
                [self performSelectorOnMainThread:@selector(receiveData:) withObject:receiveStatusDic waitUntilDone:NO];
            }else{
                
                [receiveStatusDic setValue:@"-1" forKey:@"status"];
            }
        }else{
            [receiveStatusDic setValue:@"-1" forKey:@"status"];
        }
    }];
    
    [task resume];
}

2、获取自身版本号

-(void)receiveData:(id)sender
{
    //获取APP自身版本号 localVersion 例如:0.2.1 -> 021
    NSString *localVersion = [[[NSBundle mainBundle]infoDictionary]objectForKey:@"CFBundleShortVersionString"];
    
    localVersion = [localVersion stringByReplacingOccurrencesOfString:@"." withString:@""];
    
    NSString * serverVerison = sender[@"version"];
    
    serverVerison = [serverVerison stringByReplacingOccurrencesOfString:@"." withString:@""];
    if ([serverVerison intValue]>[localVersion intValue]) {
        [self updateVersion];
    }
}

3、提示更新

-(void)updateVersion{
    NSString *msg = [NSString stringWithFormat:@"更新最新版本,优惠信息提前知"];
    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"升级提示" message:msg preferredStyle:UIAlertControllerStyleAlert];
    UIAlertAction *otherAction = [UIAlertAction actionWithTitle:@"现在升级"style:UIAlertActionStyleDestructive handler:^(UIAlertAction*action) {
        NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"https://itunes.apple.com/cn/app/id1355602256?mt=8"]];
        [[UIApplication sharedApplication]openURL:url];
    }];
    [alertController addAction:otherAction];
    [self.window.rootViewController presentViewController:alertController animated:YES completion:nil];//@"1355602256"
}

此方法是要上架后才可以用!

欢迎关注我的公众号:
804805-20180829144512305-2070535021.jpg

转载于:https://www.cnblogs.com/smileK/p/9554212.html

如何在 UniApp 中实现 iOS 版本更新检测 随着移动应用的不断发展,保持应用程序的更新是必不可少的,这样用户才能获得更好的体验。本文将帮助你在 UniApp 中实现 iOS 版的版本更新检测和提示,适合刚入行的小白。我们将分步骤进行说明,每一步所需的代码及其解释都会一一列出。整体流程概述你需要一个服务器,该服务器返回当前最新版本的相关信息。假设你的更新API是在 UniApp 中我们可以使用 uni.request 来发送请求,获取更新信息。接下来我们将详细解释每个步骤。 阅读详情

相关推荐

iOS APP如何实现版本检测更新

原来项目中提示版本更新是用友盟做的,后来友盟(苹果)的后台不支持了,所以需要自己来做。当然前期我们自己做的版本更新,后来想了想,因为iOS取到只有一个( 企业版的也不多)。所以我就百度了一下,然后用苹果给咱们的rest接口做了检测更新。 原理:拿到苹果服务器我们产品信息(包含版本号version和buile 还有产品的所有信息)跟当前安装的产品的版本进行比较。 步骤: 1.取到苹果服务器我们产品的信

littleSun_zheng的专栏 1万+

iOS 判断系统版本

由于各种原因,程序需要兼容iOS以前的版本,那么设置一个较低的部署目标和基于特定iOS版本的代码分支,就显得很有必要了。 举个例子: 以前我们判断iOS版本会如下写: if ([[[UIDevice currentDevice].systemVersion substringToIndex:1] intValue] >= 7) { // iOS 7.0 及以后的版本

driftAxe的专栏 1万+

[iOS]AppStore中APP版本更新流程梳理

版本更新的流程,与上架相比,简单了很多,如果你对上架不熟悉可参考这篇文章: [iOS]AppStore最新上架流程梳理,这是笔者最新整理的上架流程; 下面我们开始来说说APP版本更新流程: 一. 构建新版本 在iTunes Collection登陆你的开发者账号,进入到你要更新APP,查看APP详细信息,点击下面的版本或平台按钮(英文状态为:VERSION OR PLATFORM),构

流火緋瞳的博客 8848

iOS判断系统版本号的四种方法

代码中判断设备iOS系统版本号从而使用不同方法处理来适配的四种方法

Minecraft 3万+

ios设备信息

ios经常用到的获取系统信息的一些方法,//手机序列号 NSString* identifierNumber = [[UIDevice currentDevice] uniqueIdentifier]; NSLog(@"手机序列号: %@",identifierNumber); //手机别名: 用户定义的名称 NSString* userPhoneName = [[U

songbai1211的专栏 688

IOS获取当前机器ios版本

[[UIDevice currentDevice].systemVersion floatVaule]  若大于7.0,则在界面布局中,将会有一个出现在最上面高度为20的控制栏。

goodstartlin的博客 472

ios获取http版本

ios获取http版本 - (NSString *)getHTTPVersion { NSURLResponse *response = self; NSString *version; NSString *funName = @"CFURLResponseGetHTTPResponse"; MYURLResponseGetHTTPResponse originURLResponseGetHTTPResponse = dlsym(RTLD_DEFAULT, [funN

pureszgd的博客 628

iOS APP 比较版本号,检测更新

1.获取当前APP版本号 #pragma mark - 获取APP当前版本号 - (NSString *)getCurrentVersion { NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary]; NSString *currentVersion = [infoDict objectForKey:@"...

俊而不逊的博客 2188

IOS 获取当前版本号监测版本更新

我们知道 苹果已经不允许APP内置栏目提醒用户升级当前版本,但是我们仍然可以使用进去应用弹窗的方式来曲线提醒用户及时升级到最新版本APP。 大致步骤如下: 1、获取当前系统存储的APP版本号; 2、获取接口返回的APP最新的版本号; 3、通过比较后决定是否弹窗提醒用户跳转APPstore进行更新。 OK,实现第一步: #pragma mark - 获取当前App版本

kevinSnip的专栏 1084

ios检查版本更新

场景 在我们使用应用时,一打开应用,如果此应用有新的版本,常常能在应用中给出提示,是否要更新此应用。所以,我们就来看看,版本更新是如何实现的。 应用 苹果给了我们一个接口,能根据应用id请求一些关于应用的信息。我们可以根据返回的信息,来判断版本是否和应用的版本一致,如果不一致,那么就出现新的版本了。这时,就需要向用户提醒有新的版本,需要更新。具体步骤如下: NSMutableURL

欢迎关注我的微信公众号:Vichuzhu 4585

iOS APP 比较版本号,检测更新

iOS APP 比较版本号,检测更新

Jack, what else can you do besides holding your little darling? 792

iOS检查版本更新,以及获取不到版本信息问题

-(void)versionURL{ dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{ //耗时的操作---获取某个应用在AppStore上的信息,更改id就行 //检测版本信息 一定要注意 首先查看自己的应用销售范围是 哪里? 如果是只有一个中国 请选择1方法,否则选择

M秒针的博客 1087

iOS 版本更新

typedef void(^UpdateBlock)(NSString *currentVersion,NSString *storeVersion, NSString *openUrl,BOOL isUpdate); -(void)updateWithAPPID:(NSString *)appId withBundleId:(NSString *)bundelId block:(UpdateBlock)block; -(void)updateWithAPPID:(NSString *)appId wit

韩博主 426

iOS检查版本更新APPStore更新地址和评价地址

From: http://snowyshell.blog.163.com/blog/static/2209140342013924929888/ 以下XXX是itunesconnect网站上对应appApple ID,它是一串纯数字 检查更新网址: APPLE_URL :"http://itunes.apple.com/lookup?id=XXX" 通过检查最

caizhongtao的专栏 3816

用电脑更新手机ios系统_苹果手机怎么更新iOS版本

苹果手机用户使用苹果手机的时候,发现iOS系统出现了新版本。那么苹果手机怎么更新iOS版本呢?下面就让小编来告诉大家吧,欢迎阅读。苹果手机怎么更新iOS版本1、如果苹果手机推出iOS版本版本后,此时用户会在设置图标上方看到有个1字,点击“设置”。2、接着在点击设置页面中的通用按键。3、进入通用页面后继续点击此页面中的“软件更新”按键。4、进入“软件更新”页面后,在这里会看到最新版本的一...

weixin_39911567的博客 6651

iOS开发 版本更新提醒

- (void)versionUpdate{         //获得当前发布的版本     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{         //耗时的操作---获取某个应用在AppStore上的信息,更改id就行         NSS

Jason_jason_yz的博客 4370

iOS应用内跳转至App Store 以及获取App Store内最新版本

近期做到APP更新,当新应用更新后,本地的APP也需要更新,这个时候给用户一个提示就比较好了。相关代码如下,写在AppDelegate里面就可以,也可以写在首页。   //跳转至App Store核心代码     NSURL *url = [NSURL URLWithString:[NSStristringWithFormat:@"https://itunes.apple.

Shi-Lifeng的博客 6976
上一篇: iOS基础(五)——获取当前控制器和获取当前UI控制器
下一篇: iOS基础(七)——获取唯一标识
dddt2007
博客等级 码龄12年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值