iOS 版本更新

    xiaoxiao2021-03-26  116

    苹果本来就自带版本更新,但是有些客户就要做版本更新。苹果提供了开放的接口 http://itunes.apple.com/lookup?id=appleID // appleID App store appleID appleID #pragma mark 版本更新 NSString *appleID =@"1120559848"; //App store appleID NSMutableURLRequest *request = [[NSMutableURLRequestalloc] init]; [request setURL:[NSURLURLWithString:[NSStringstringWithFormat:@"http://itunes.apple.com/lookup?id=%@",appleID]]]; [request setHTTPMethod:@"GET"]; NSData *returnData = [NSURLConnectionsendSynchronousRequest:request returningResponse:nilerror:nil]; NSMutableDictionary *jsondata = [NSJSONSerializationJSONObjectWithData:returnData options:NSJSONReadingMutableLeaveserror:nil]; NSLog(@"jsondata===%@",jsondata); NSMutableArray *resultsArr = [jsondataobjectForKey:@"results"]; NSMutableDictionary *infodic = [resultsArrobjectAtIndex:0]; NSString *latestVersion = [infodicobjectForKey:@"version"]; NSString *trackViewUrl = [infodicobjectForKey:@"trackViewUrl"]; NSLog(@"%@",trackViewUrl); NSLog(@"latestVersion=%@",latestVersion); [[NSUserDefaultsstandardUserDefaults]setObject:trackViewUrlforKey:@"trackViewUrl"]; NSLog(@"uurrll=%@",trackViewUrl); NSDictionary *infoDict = [[NSBundlemainBundle] infoDictionary]; NSString *currentVersion = [infoDictobjectForKey:@"CFBundleShortVersionString"]; NSLog(@"当前版本号是%@",currentVersion); NSLog(@"doublecurrent=%@",currentVersion); if ([currentVersionisEqualToString:latestVersion]) { NSLog(@"版本相同不用更新"); [[NSUserDefaultsstandardUserDefaults] removeObjectForKey:@"updateVersion"]; [[NSUserDefaultsstandardUserDefaults] setObject:@"no"forKey:@"updateVersion"]; }else { NSArray * newVerAry = [latestVersioncomponentsSeparatedByString:@"."]; NSArray * curVerAry = [currentVersioncomponentsSeparatedByString:@"."]; for (int i =0; i < [newVerAry count] || i < [curVerArycount]; i++) { int newSubVer, curSubVer; // 如果子版本号数不足,作为0处理 if (i >= [newVerArycount]) { newSubVer = 0; } else { newSubVer = [[newVerAry objectAtIndex:i]intValue]; } if( i >= [curVerArycount]) { curSubVer = 0; } else { curSubVer = [[curVerAry objectAtIndex:i]intValue]; } if( newSubVer > curSubVer) { NSLog(@"当前版本低,需要更新"); [[NSUserDefaultsstandardUserDefaults] removeObjectForKey:@"updateVersion"]; [[NSUserDefaultsstandardUserDefaults] setObject:@"yes"forKey:@"updateVersion"]; NSLog(@"version == yes"); //跳转 UIAlertView *alter = [[UIAlertViewalloc] initWithTitle:@"有新版本更新"message:nildelegate:selfcancelButtonTitle:nilotherButtonTitles:@"更新",nil]; [alter show]; return; } elseif( newSubVer < curSubVer) { NSLog(@"当前版本高不需要更新"); [[NSUserDefaultsstandardUserDefaults] removeObjectForKey:@"updateVersion"]; [[NSUserDefaultsstandardUserDefaults] setObject:@"no"forKey:@"updateVersion"]; return; } } }

    转载请注明原文地址: https://ju.6miu.com/read-600146.html

    最新回复(0)