2013-10-02 5 views
3

Dans mon application, j'utilise NSUserDefaults et j'ai mis à jour mon iPhone à la dernière iOS 7.0.2. À partir de ce moment, l'application n'enregistre pas les données que je voulais enregistrer dans NSUserDefaults.ne peut pas enregistrer à NSUserDefaults sur iOS 7.0.2

Je me souviens que d'iOS 5 vous deviez demander la permission à l'utilisateur, est-ce le cas?

Le code suivant, enregistrez le statut de mot de passe oublié, à savoir « envoyer votre e-mail » -> « attente du code » -> « succès »

L'utilisateur insère son email et obtient un e-mail avec un code, après en insérant le code, il obtient son nouveau mot de passe. Mon code est:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
NSString *temp = [defaults valueForKey:FORM_STATUS]; 

J'ai jamais eu besoin de synchroniser. Le code ci-dessus a fonctionné parfaitement jusqu'à IOS v7.0.2, et le bug ne se produit que sur un périphérique réel. pas sur le simulateur ou un appareil avec IOS 7.0. Hier j'ai utilisé mon iPhone pour le vérifier et le soir j'ai mis à jour mon appareil et vérifié à nouveau.

Si quelqu'un se souvient d'IOS 5 si vous n'avez pas demandé l'autorisation d'utiliser les photos, vous ne pouvez pas voir la vue modale. Je me souviens avoir créé une application à cette époque qui utilisait la bibliothèque de photos de l'utilisateur et elle a cessé de fonctionner sur un appareil réellement mis à jour (à ce moment-là).

+1

Montrez votre code. Qu'obtenez-vous lorsque vous chargez les valeurs par défaut à la place? – BergQuester

+1

Demander l'autorisation d'enregistrer dans 'NSUserDefaults'? –

+1

Vous ne devriez pas avoir besoin d'autorisations pour stocker des données dans NSUserDefaults AFAIK. – Taum

Répondre

2

Pour magasin:

NSString * Authkey = @"Sivarwin"; 
NSUserDefaults *storeData=[NSUserDefaults standardUserDefaults]; 
[storeData setObject:Authkey forKey:@"Key"]; 
NSLog(@"SYMBOL : %@",Authkey); 

Pour récupérer:

NSUserDefaults *storeData=[NSUserDefaults standardUserDefaults]; 
NSString *loginString = [storeData valueForKey:@"Key"]; 
NSLog(@"%@ Saved String ",loginString); 
+0

Votre code devrait fonctionner ainsi je marquerai comme réponse. Mais je suppose que le problème était la version iOS (c'était bêta à l'époque) –

Questions connexes