2010-08-31 3 views
4

Je veux forcer la réinitialisation à NSUserDefault chaque fois que l'utilisateur met à jour mon application. pourquoi j'ai besoin de cela parce que chaque mise à jour comprend de nouvelles informations abt utilisateur. Comme certaines informations (token) déjà présentes dans NSUserDefault, mon application n'appelle pas à mon service Web. en raison de ce fait, je n'ai pas de nouvelles informations utilisateur. et aussi je ne veux pas écrire si..else déclaration pour chaque nouvelle version.forcer la réinitialisation NSUserDefault sur la mise à niveau de l'application iPhone

merci beaucoup. J'espère que ma question est assez claire.

Répondre

6

Check this out:

[NSUserDefaults resetStandardUserDefaults] 

Pour plus d'informations consultez le NSUserDefaults Class reference.

Ce que vous pouvez faire est d'enregistrer par défaut la version actuelle de votre application. Tout le temps que l'utilisateur ouvre l'application, vous vérifiez la version enregistrée par rapport à la version actuelle. Dans le cas d'une mise à jour, la version actuelle sera différente de la version enregistrée, et vous saurez ainsi qu'il est temps de nettoyer les valeurs par défaut de l'utilisateur. Après nettoyage, vous enregistrez la nouvelle valeur pour la version actuelle.

2

Vous pouvez enregistrer votre version d'application actuelle dans NSUserDefaults lorsque vous démarrez votre application. Avant cela, vous pouvez simplement vérifier si la version réelle de l'application est supérieure à la version stockée dans NSUserDefaults. Si c'est le cas, vous savez que l'utilisateur vient de mettre à jour, et vous pouvez supprimer et les informations (comme le jeton) des valeurs par défaut en utilisant removeObjectForKey

+0

merci Reed .... – Nnp

+0

cela semble être un bon chemin pendant les mises à niveau de version – Max

Questions connexes