Когда я выхожу из приложения, значения, хранящиеся в NSUserDefaults, не сохраняются. Я сохранил значение, как это:NSUserDefaults не сохраняет после закрытия приложения
[[NSUserDefaults standardUserDefaults] setValue:@"enabled" forKey:@"notifications"];
[[NSUserDefaults standardUserDefaults] synchronize];
Как хранить что-то с NSUserDefaults даже после того, как приложение завершает работу?
Это, как я получить значения:
[[NSUserDefaults standardUserDefaults] valueForKey:@"notifications"]
Первые две строки бегут, потому что я их для запуска при нажатии кнопки. Когда я перехожу к другому виду и обратно к кнопке с кнопкой, он возвращает значение, которое я установил.
Я вижу, что не так. У меня есть этот код в первом представлении и предполагается, что он работает правильно:
NSUserDefaults *Def = [NSUserDefaults standardUserDefaults];
NSString *Ver = [Def stringForKey:@"Version"];
NSString *CurVer = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleVersionKey];
if(Ver == nil || [Ver compare:CurVer] != 0)
{
if(Ver == nil)
{
[[NSUserDefaults standardUserDefaults] setValue:@"disabled" forKey:@"notifications"];
}
}
где находится ваше значение, которое вы положили в SetValue? Прямо сейчас вы устанавливаете его как строку «enabled». И как вы к этому относитесь? – Umitk
Когда приложение завершает работу и как работает этот код (вы уверены, что он запустился)? – Wain
Что такое распечатка ключа уведомлений nsuserdefaults? –