1 NSString *appleID = @"your app appleID";
2 NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
3 [request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://itunes.apple.com/lookup?id=%@",appleID]]];
4 [request setHTTPMethod:@"GET"];
5 NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
6
7 NSMutableDictionary *jsondata = [NSJSONSerialization JSONObjectWithData:returnData options:NSJSONReadingMutableLeaves error:nil];
8 NSLog(@"jsondata===%@",jsondata);
9 NSMutableArray *resultsArr = [jsondata objectForKey:@"results"];
10 NSMutableDictionary *infodic = [resultsArr objectAtIndex:0];
11 NSString *latestVersion = [infodic objectForKey:@"version"];
12 NSString *trackViewUrl = [infodic objectForKey:@"trackViewUrl"];
13 NSLog(@"%@",trackViewUrl);
14 NSLog(@"latestVersion=%@",latestVersion);
15
16 [[NSUserDefaults standardUserDefaults]setObject:trackViewUrl forKey:@"trackViewUrl"];
17 NSLog(@"uurrll=%@",trackViewUrl);
18 NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];
19 NSString *currentVersion = [infoDict objectForKey:@"CFBundleShortVersionString"];
20 NSLog(@"当前版本号是%@",currentVersion);
21 NSLog(@"doublecurrent=%@",currentVersion);
22 if ([currentVersion isEqualToString:latestVersion]) {
23 NSLog(@"版本相同 不用更新");
24 [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"updateVersion"];
25 [[NSUserDefaults standardUserDefaults] setObject:@"no" forKey:@"updateVersion"];
26 }else
27 { NSArray * newVerAry = [latestVersion componentsSeparatedByString:@"."];
28 NSArray * curVerAry = [currentVersion componentsSeparatedByString:@"."];
29 for (int i = 0; i < [newVerAry count] || i < [curVerAry count]; i++)
30 {
31 int newSubVer, curSubVer;
32 // 如果子版本号数不足,作为0处理
33 if (i >= [newVerAry count])
34 {
35 newSubVer = 0;
36 }
37 else
38 {
39 newSubVer = [[newVerAry objectAtIndex:i] intValue];
40 }
41
42 if( i >= [curVerAry count])
43 {
44 curSubVer = 0;
45 }
46 else
47 {
48 curSubVer = [[curVerAry objectAtIndex:i] intValue];
49 }
50
51 if( newSubVer > curSubVer)
52 {
53 NSLog(@"当前版本低 ,需要更新");
54 [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"updateVersion"];
55 [[NSUserDefaults standardUserDefaults] setObject:@"yes" forKey:@"updateVersion"];
56 NSLog(@"version == yes");
57 return;
58 }
59 else if( newSubVer < curSubVer)
60 {
61 NSLog(@"当前版本高 不需要更新");
62 [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"updateVersion"];
63 [[NSUserDefaults standardUserDefaults] setObject:@"no" forKey:@"updateVersion"];
64 return;
65 }
66 }
67
68 }