標籤:style blog color io os 使用 ar for sp
流行的解決方案是在大多數地方是用[NSUserDefaults standardUserDefaults]的一個關鍵,如果它不存在,這意味著這是應用程式第一次啟動,否則,它不是第一次啟動
在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:”方法, 添加以下代碼:
1 if (![[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) {2 [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"];3 NSLog(@"第一次啟動");4 }else{5 NSLog(@"非第一次啟動");6 }
這樣使用對於第一次安裝是非常有效,但是如果程式安裝升級版本,這個firstLaunch都已經存在了,不會再運行了。
如果需要每次應用程式更新後都判斷出第一次運行 請參考以下代碼
#define LAST_RUN_VERSION_KEY @"last_run_version_of_application"- (BOOL) isFirstLoad{ NSString *currentVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *lastRunVersion = [defaults objectForKey:LAST_RUN_VERSION_KEY]; if (!lastRunVersion) { [defaults setObject:currentVersion forKey:LAST_RUN_VERSION_KEY]; return YES; // App is being run for first time }else if (![lastRunVersion isEqualToString:currentVersion]) { [defaults setObject:currentVersion forKey:LAST_RUN_VERSION_KEY]; return YES; // App has been updated since last run } return NO;}
怎樣判斷ios app 第一次啟動以及每次更新後的第一次啟動