NSUserDefaultsを使用するアプリがすでにAppStoreにあります。デフォルトのいくつかは、アプリを最初に起動したときに設定したデフォルト設定であり、ユーザーは必要に応じて後で変更することができます。したがって、AppDelegate appDidFinishLaunchingWithOptionsに次のように配置します:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if (! [defaults boolForKey:@"notFirstRun"]) {
[defaults setBool:YES forKey:@"notFirstRun"];
[defaults setInteger:0 forKey:@"verseKey"];
[defaults synchronize];
}
私が今抱えている問題は、NSUserDefaultカテゴリにいくつかのデフォルト設定を追加したいので、次のようにしたいと思います。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if (! [defaults boolForKey:@"notFirstRun"]) {
[defaults setBool:YES forKey:@"notFirstRun"];
NSString *smalltitle = @"4";
NSString *smallarticle = @"3";
[defaults setObject:smalltitle forKey:@"Title"];
[defaults setObject:smallarticle forKey:@"Article"];
[defaults setInteger:0 forKey:@"verseKey"];
[defaults synchronize];
}
これにより、すでにアプリをダウンロードしていて、単に更新しているだけの人にとっては問題が発生することを私は知っています。notFirstRun BoolがすでにYESに設定されているため、そのコードは実行されません。私がここで何をすべきかについて何か考えはありますか?