comment sauvegarder et récupérer des données dans la même activité avec SharedPreferences dans Android

StackOverflow https://stackoverflow.com/questions/4323720

  •  29-09-2019
  •  | 
  •  

Question

Je suis nouveau à la plate-forme Android. S'il vous plaît résoudre ma requête « comment sauvegarder et récupérer des données dans la même activité avec SharedPreferences dans Android »

Était-ce utile?

La solution

De nombreuses applications peuvent fournir un moyen de préférences de capture d'utilisateur sur les paramètres d'une application spécifique ou une activité. Pour supporter cela, Android fournit un ensemble simple d'API.

Préférences sont le nom typiquement des paires de valeurs. Ils peuvent être stockés en tant que « Préférences partagées » à travers diverses activités dans une application (note actuellement il ne peut pas être partagée entre les processus). Ou il peut être quelque chose qui doit être stocké spécifique à une activité.

  1. Préférences partagées. Les préférences partagées peuvent être utilisées par toutes les composantes (activités, services, etc.) au large des applications

  2. Activité préférences traitées. Ces préférences ne peuvent être utilisés avec l'activité et ne peuvent pas être utilisés par d'autres composants de l'application

Préférences partagées:

Les préférences partagées sont gérées à l'aide de la méthode de getSharedPreferences de la classe Context. Les préférences sont stockées dans un fichier par défaut (1) ou vous pouvez spécifier un nom de fichier (2) à utiliser pour désigner les préférences.

(1) Voici comment vous obtenez l'instance lorsque vous spécifiez le nom de fichier

public static final String PREF_FILE_NAME = "PrefFile";
   SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

MODE_PRIVATE est le mode de fonctionnement pour les préférences. Il est le mode par défaut et signifie que le fichier créé sera accessible seulement par l'application appelante. Deux autres sont pris en charge en mode MODE_WORLD_READABLE et MODE_WORLD_WRITEABLE. Dans une autre application MODE_WORLD_READABLE peut lire le fichier créé, mais ne peut pas le modifier. En cas de MODE_WORLD_WRITEABLE d'autres applications ont également des autorisations d'écriture pour le fichier créé.

(2) La méthode recommandée est d'utiliser le mode par défaut, sans spécifier le nom de fichier

SharedPreferences preferences = PreferencesManager.getDefaultSharedPreferences(context);

Enfin, une fois que vous avez l'instance de préférences, voici comment vous pouvez récupérer les valeurs stockées des préférences:

 int storedPreference = preferences.getInt("storedInt", 0);

Pour Valeurs magasin dans le fichier de préférences objet SharedPreference.Editor doit être utilisé. Editor est l'interface imbriquée de la classe SharedPreference.

SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Editor prennent également en charge des méthodes telles que remove() et clear() pour supprimer la valeur de préférence à partir du fichier.

Préférences d'activité:

Les préférences partagées peuvent être utilisées par d'autres composants de l'application. Mais si vous n'avez pas besoin de partager les préférences avec d'autres composants et que vous souhaitez avoir des activités préférences privées. Vous pouvez le faire avec l'aide de la méthode de getPreferences() de l'activité. La méthode getPreference utilise la méthode getSharedPreferences() avec le nom de la classe d'activité pour le nom du fichier de préférence.

Voici le code pour obtenir les préférences

SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt("storedInt", 0);

Le code pour stocker des valeurs est identique dans le cas des préférences partagées.

SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Vous pouvez également utiliser d'autres méthodes telles que le stockage de l'état d'activité dans la base de données. Remarque Android contient également un package appelé android.preference. Le paquet définit les classes pour mettre en œuvre les préférences de l'application UI.

Pour voir d'autres exemples vérifier Android données poste de stockage sur le site des développeurs.

Autres conseils

Ce lien a tout: http://developer.android. com / guide / sujets / données / données storage.html

Fondamentalement, il est comme:

   // Restore preferences
   SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);

   // Get one Setting
   boolean silent = settings.getBoolean("silentMode", false);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top