解決方案:在AppDelegate.h中的didFinishLaunchingWithOptions裡面添加:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. NSLog(@did Finish Launching With Options); if ([[NSUserDefaults standardUserDefaults] boolForKey:@isFirstLaunched]){ NSLog(@AppDelegate - didFinishLaunchingWithOptions: App was already launched.); } else{ NSLog(@AppDelegate - didFinishLaunchingWithOptions: App's first launch.); [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@isFirstLaunched]; [[NSUserDefaults standardUserDefaults] synchronize]; } if ([[[NSUserDefaults standardUserDefaults] stringForKey:@clientVersion] isEqualToString:CLIENT_VERSION]) { NSLog(@AppDelegate - didFinishLaunchingWithOptions: App version remains the same.); } else{ NSLog(@AppDelegate - didFinishLaunchingWithOptions: App version did update.); [[NSUserDefaults standardUserDefaults] setObject:CLIENT_VERSION forKey:@clientVersion]; [[NSUserDefaults standardUserDefaults] synchronize]; } return YES; }
在App-Prefix.pch中定義CLIENT_VERSION:
#define CLIENT_VERSION [[[NSBundle mainBundle] infoDictionary] objectForKey:@CFBundleShortVersionString]