Hay un método en NSUserDefaults
llamado registerDefaults:
. Utilice este método para establecer los "valores predeterminados predeterminados" de su aplicación. Básicamente, crea un NSDictionary
archivo que contiene sus claves y valores predeterminados (en su caso, un NO para una clave de "credenciales guardadas"), y lo registra usando registerDefaults:
. Esto se hace a menudo en el + (void)initialize
método del delegado de la aplicación para garantizar que sus valores predeterminados se registren antes de que sean necesarios. Estos valores solo se utilizan si su aplicación no los ha reemplazado. En otras palabras, no se usarán a menos que la clave que está buscando no esté en el dominio de la aplicación, es decir, los valores predeterminados del usuario leídos del archivo .plist del usuario.
Por otro lado, simplemente puede verificar las credenciales de inicio de sesión y mostrar una alerta si faltan. Esto elimina la necesidad de mantener su valor booleano sincronizado con las credenciales de inicio de sesión. Si más tarde proporciona la capacidad de "eliminar credenciales de inicio de sesión", no tendrá que recordar volver a establecer el booleano en NO. Si sus credenciales de inicio de sesión se guardan en los valores predeterminados del usuario, haría esto:
NSString *userID = [[NSUserDefaults standardUserDefaults] stringForKey:@"userID"];
NSString *password = [[NSUserDefaults standardUserDefaults] stringForKey:@"password"];
if (userID != nil && password != nil) {
// Code to log user in
} else {
// Code to pop up an alert
}