Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
180 L’art du développement Android
● appeler la méthode getDefaultSharedPreferences() d’un objet PreferencesManager pour accéder aux préférences partagées qui fonctionnent de concert avec le
système des préférences globales d’Android.
Les deux premiers appels prennent un mode de sécurité en paramètre – pour le moment,
utilisez la valeur 0. getSharedPreferences() attend également le nom d’un ensemble de
préférences : en réalité, getPreferences() appelle getSharedPreferences() en lui passant
le nom de classe de votre activité en paramètre. getDefaultSharedPreferences() prend
en paramètre le Context des préférences (c’est-à-dire votre Activity).
Toutes ces méthodes renvoient une instance de SharedPreferences qui fournit un ensemble de méthodes d’accès aux préférences par leurs noms. Ces méthodes renvoient un résultat du type adéquat (getBoolean(), par exemple, renvoie une préférence booléenne).
Elles attendent également une valeur par défaut, qui sera renvoyée s’il n’existe pas de
préférences ayant la clé indiquée.
Définir vos préférences
À partir d’un objet SharedPreferences, vous pouvez appeler edit() pour obtenir un
"éditeur" pour les préférences. Cet objet dispose d’un ensemble de méthodes modificatrices à
l’image des méthodes d’accès de l’objet parent SharedPreferences. Il fournit également
les méthodes suivantes :
● remove() pour supprimer une préférence par son nom ;
● clear() pour supprimer toutes les préférences ;
● commit() pour valider les modifications effectuées via l’éditeur.
La dernière est importante : si vous modifiez les préférences avec l’éditeur et que vous n’appeliez pas commit(), les modifications disparaîtront lorsque l’éditeur sera hors de portée.
Inversement, comme les préférences acceptent des modifications en direct, si l’une des
parties de votre application (une activité, par exemple) modifie des préférences partagées,
les autres parties (tel un service) auront immédiatement accès à la nouvelle valeur.
Un mot sur le framework
À partir de sa version 0.9, Android dispose d’un framework de gestion des préférences qui
ne change rien à ce que nous venons de décrire. En fait, il existe surtout pour présenter un
ensemble cohérent de préférences aux utilisateurs, afin que les applications n’aient pas à
réinventer la roue.
L’élément central de ce framework est encore une structure de données XML. Vous
pouvez décrire les préférences de votre application dans un fichier XML stocké dans le
répertoire res/xml/ du projet. À partir de ce fichier, Android peut présenter une interface
graphique pour manipuler ces préférences, qui seront ensuite stockées dans l’objet SharedPreferences obtenu par getDefaultSharedPreferences().
Livre Android.book Page 180 Dimanche, 8. novembre 2009 12:23 12
Précédent

- 195/391

Suivant