Hola chicos estoy teniendo problemas con NSUserDefaults y yo no entiendo muy bien lo que está pasandoNSUserDefaults no ahorrando adecuadamente
Mi aplicación tiene 5 niveles y cada nivel hace exactamente lo mismo con NSUserDefaults (Recupera los valores predeterminados de los niveles , cambia el valor a medida que el usuario juega el nivel y luego establece los valores predeterminados y sincroniza al final del nivel) los primeros 4 niveles ... funcionan sin problemas, pero el último nivel no guarda los valores. La aplicación no falla y el último nivel no es lo último que sucede, e incluso tengo los valores predeterminados sincronizados cuando la aplicación finaliza. ¿Existe un tamaño máximo de los NSUserDefaults o hay algo que cualquiera puede pensar que no he, voy a publicar el código de abajo pero como he dicho los primeros cuatro niveles funciona perfectamente
//header
NSUserDefaults *userData;
@property(nonatomic,retain) NSUserDefaults *userData;
//class file
//Sets the boolean variables for the class to use
userData = [NSUserDefaults standardUserDefaults];
boolOne = [userData boolForKey:@"LevelFiveBoolOne"];
boolTwo = [userData boolForKey:@"LevelFiveBoolTwo"];
boolThree = [userData boolForKey:@"LevelFiveBoolThree"];
boolFour = [userData boolForKey:@"LevelFiveBoolFour"];
boolFive = [userData boolForKey:@"LevelFiveBoolFive"];
boolSix = [userData boolForKey:@"LevelFiveBoolSix"];
boolSeven = [userData boolForKey:@"LevelFiveBoolSeven"];
//End Of Level
[userData setBool:boolOne forKey:@"LevelFiveBoolOne"];
[userData setBool:boolTwo forKey:@"LevelFiveBoolTwo"];
[userData setBool:boolThree forKey:@"LevelFiveBoolThree"];
[userData setBool:boolFour forKey:@"LevelFiveBoolFour"];
[userData setBool:boolFive forKey:@"LevelFiveBoolFive"];
[userData setBool:boolSix forKey:@"LevelFiveBoolSix"];
[userData setBool:boolSeven forKey:@"LevelFiveBoolSeven"];
[userData synchronize];
Cuando cuando cambio Para la vista que utiliza estos valores predeterminados, los valores son correctos, pero cuando finalizo la aplicación y la reinicio, estos valores no se guardan, cada otro nivel realiza exactamente el mismo proceso, este es el único nivel que no funciona.
Me he fijado en esto durante bastante tiempo y espero que alguien haya tenido el mismo problema y pueda darme una idea de cómo lo resolvieron.
gracias de antemano BWC
Difícil de decir de lo que has publicado. Verifique dos veces el método que guarda los valores predeterminados después del nivel. – Jordan