2010-06-05 3 views
2

Je sauvegarde les préférences dans une activité mais je ne peux pas enregistrer les préférences sauvegardées dans une autre activité. Je peux accéder aux préférences enregistrées dans la même activité mais pas dans les autres. Il ne me donne pas d'erreur, mais il bloque toujours les valeurs nulles dans la seconde activité.Pouvons-nous utiliser les préférences accressent plusieurs acvtivités différentes dans Android?

est Ci-dessous le code:

First Activity: 
     public static final String PREFS_NAME = "MyPrefsFile"; 
    SharedPreferences.Editor editor; 
editor.putString("token", access_token); 
editor.commit(); 

Deuxième activité:

 public static final String PREFS_NAME = "MyPrefsFile"; 
    SharedPreferences prefs = getSharedPreferences(PREFS_NAME, 0);//getPreferences(0); 
    String restoredtoken = prefs.getString("token", null); 
    if (restoredtoken== null) { 
       ///doing some task; 


      } 

Répondre

2

Votre première activité devrait avoir:

android.content.SharedPreferences prefs = getSharedPreferences(PREFS_NAME, 0); 
android.content.SharedPreferences.Editor editor = prefs.edit(); 
editor.putString("token", access_token); 
editor.commit(); 

Quelques autres suggestions:

  • Vous devez utiliser Context.MODE_PRIVATE au lieu du nombre magique 0 dans l'appel à getSharedPreferences().
  • En votre nouvelle édition, vous montrez que vous avez deux différents champs statiques dans chaque activité pour PREFS_NAME. Cette doit être une variable unique dans un, ou ailleurs, mais devrait ne pas être dupliqué.
+0

Oui, vous avez raison.Merci de la précieuse réponse. – Maneesh

Questions connexes