笔记

作者: 飞卜飞 | 来源:发表于2017-10-27 13:11 被阅读0次

    //网络请求app 的信息

    -(void)VersonUpdate{

    //定义的app的地址

    NSString *urld = [NSString stringWithFormat:@"http://itunes.apple.com/lookup?id=%@",@"1242726744"];

    //网络请求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];

    }

    //获取自身的版本号并与AppStore比较

    -(void)receiveData:(id)sender

    {

    //获取APP自身版本号

    NSString *localVersion = [[[NSBundle mainBundle]infoDictionary]objectForKey:@"CFBundleShortVersionString"];

    NSArray *localArray = [localVersion componentsSeparatedByString:@"."];

    NSArray *versionArray = [sender[@"version"] componentsSeparatedByString:@"."];

    if ((versionArray.count == 3) && (localArray.count == versionArray.count)) {

    if ([localArray[0] intValue] <  [versionArray[0] intValue]) {

    [self updateVersion];

    }else if ([localArray[0] intValue]  ==  [versionArray[0] intValue]){

    if ([localArray[1] intValue] <  [versionArray[1] intValue]) {

    [self updateVersion];

    }else if ([localArray[1] intValue] ==  [versionArray[1] intValue]){

    if ([localArray[2] intValue] <  [versionArray[2] intValue]) {

    [self updateVersion];

    }

    }

    }

    }

    }

    //根据比较的结果,实现弹窗

    -(void)updateVersion{

    NSString *msg = [NSString stringWithFormat:@"更新最新版本,优惠信息提前知"];

    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"升级提示" message:msg preferredStyle:UIAlertControllerStyleAlert];

    UIAlertAction *otherAction = [UIAlertAction actionWithTitle:@"现在升级"style:UIAlertActionStyleDestructive handler:^(UIAlertAction*action) {

    //        "itms-apps ://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8"

    //        NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://itunes.apple.com/cn/app/%E5%A8%84%E5%A4%8F%E7%A4%BE%E5%8C%BA/id1242726744?mt=8"]];

    NSURL * url = [NSURL URLWithString:@"itms-apps://itunes.apple.com/cn/app/%E5%A8%84%E5%A4%8F%E7%A4%BE%E5%8C%BA/id1242726744?mt=8"];

    [[UIApplication sharedApplication]openURL:url];

    }];

    [alertController addAction:otherAction];

    [self.window.rootViewController presentViewController:alertController animated:YES completion:nil];

    }

    相关文章

      网友评论

          本文标题:笔记

          本文链接:https://www.haomeiwen.com/subject/tpvrpxtx.html