2010-04-26 6 views
2

Je développe une application iPhone et je veux savoir quand il est la première fois que l'application est exécutée. Je veux vérifier certaines autorisations étendues de facebook la première fois.première application iPhone temps ran et des fichiers de configuration

  1. Comment puis-je le savoir?

Une autre façon de résoudre ce problème consiste à stocker les autorisations étendues accordées dans certains fichiers de configuration. Je ne veux pas rendre visible ce fichier via l'icône des paramètres de l'application.

  1. Comment puis-je ajouter certains fichiers de configuration pour stocker ces autorisations accordées?

Répondre

4
  1. La façon std serait de vérifier s'il y a une valeur dans NSUserDefaults et si cette valeur n'existe pas (comme lors de la première course) puis créez la valeur ainsi sur le reste des départs vous saura pas sa première course.

  2. C'est aussi un bon candidat pour utiliser les NSUserDefaults et la clé/valeur définie pares pour chaque réglage/l'autorisation que vous voulez.

Here's a quick tutorial on using NSUserDefaults.

Résumé de ce site pour Sauver:

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; 

// saving an NSString 
[prefs setObject:@"TextToSave" forKey:@"keyToLookupString"]; 

// saving an NSInteger 
[prefs setInteger:42 forKey:@"integerKey"]; 

// saving a Double 
[prefs setDouble:3.1415 forKey:@"doubleKey"]; 

// saving a Float 
[prefs setFloat:1.2345678 forKey:@"floatKey"]; 

// This is suggested to synch prefs, but is not needed (I didn't put it in my tut) 
[prefs synchronize]; 

Chargement:

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; 

// getting an NSString 
NSString *myString = [prefs stringForKey:@"keyToLookupString"]; 

// getting an NSInteger 
NSInteger myInt = [prefs integerForKey:@"integerKey"]; 

// getting an Float 
float myFloat = [prefs floatForKey:@"floatKey"]; 

NSUserDefaults est parfait pour enregistrer les paramètres d'application et l'historique d'achat, mais si vous êtes vouloir stocker beaucoup de données, alors vous devriez utiliser une autre façon.

+0

Si je NSUserDefaults, l'utilisateur peut modifier ces valeurs en dehors de l'application? (Je veux dire, éditer ces valeurs jette l'icône des paramètres sur l'iPhone). – VansFannel

+0

Non, seule votre application peut les modifier. À moins qu'ils aient cassé la prison leur appareil, le seul vrai lieu sûr est le trousseau, mais même cela peut ne pas être sûr. Tous les paris sont désactivés sur le matériel cassé par la prison. – jamone

0

Il suffit d'écrire dans un fichier local (xml ou autre). Vérifiez, en premier lieu, l'existence du fichier. Sinon, c'est la première fois - sinon, lisez simplement le fichier.

Questions connexes