(转)iOS如何取得APP的版本信息跟服务器对比进行升级提示?

关键是自动取版本信息:

[NSString stringWithFormat:@"Version %@",[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"]];
[NSString stringWithFormat:@"Build %@",[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"]];

  

然后对比服务器上的版本,这个你得自己通过WEB提供,示例中就先写出来:

#define APP_DownloadURL @"http://itunes.apple.com/app/id483504146?mt=8" //换成你自己的APP地址

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
    if (buttonIndex != [alertView cancelButtonIndex]) 
    {
       NSURL *url = [NSURL URLWithString:APP_DownloadURL];
       [[UIApplication sharedApplication] openURL:url];
    }
}
-(void)alertUpdate:(NSString *)strContent
{
    if (!isAlertUpdateShowed) {
        isAlertUpdateShowed=YES;
        UIAlertView *av = [[[UIAlertView alloc] initWithTitle:@"升级提示"
                                                      message:strContent
                                                     delegate:self       //委托给Self,才会执行上面的调用
                                            cancelButtonTitle:@"以后再说"
                                            otherButtonTitles:@"马上更新",nil] autorelease];
        [av show];
    }
}
-(void)checkUpdate
{
    NSString* sLastVersion=@"1.1"; //取最新的版本自己去实现
    NSString* sLastVersionInfo=@"Test Update Check!"; //取最新的版本介绍自己去实现
    if (![sLastVersion isEqualToString:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"]])
    {
         [self alertUpdate:sLastVersionInfo];
    }
}

  还需要实现一些延时再提醒的处理。

转载自:http://www.cnblogs.com/gpwzw/archive/2012/03/31/2426698.html

原文地址:https://www.cnblogs.com/greywolf/p/3262335.html