Langage

Preferences Classe

Définition

Nœud dans une collection hiérarchique de données de préférence.

[Android.Runtime.Register("java/util/prefs/Preferences", DoNotGenerateAcw=true)]
public abstract class Preferences : Java.Lang.Object
[<Android.Runtime.Register("java/util/prefs/Preferences", DoNotGenerateAcw=true)>]
type Preferences = class
    inherit Object
Héritage
Preferences
Dérivé
Attributs

Remarques

Nœud dans une collection hiérarchique de données de préférence. Cette classe permet aux applications de stocker et de récupérer les données d’utilisateur et système et de configuration. Ces données sont stockées de manière persistante dans un magasin de stockage dépendant de l’implémentation. Les implémentations classiques incluent des fichiers plats, des registres spécifiques au système d’exploitation, des serveurs d’annuaires et des bases de données SQL. L’utilisateur de cette classe n’a pas besoin d’être concerné par les détails du magasin de stockage.

Il existe deux arborescences distinctes de nœuds de préférence, une pour les préférences utilisateur et une pour les préférences système. Chaque utilisateur a une arborescence de préférences utilisateur distincte, et tous les utilisateurs d’un système donné partagent la même arborescence de préférences système. La description précise de « l’utilisateur » et du « système » varie de l’implémentation à l’implémentation. Les informations classiques stockées dans l’arborescence des préférences utilisateur peuvent inclure le choix de police, le choix de couleur ou l’emplacement et la taille de fenêtre préférés pour une application particulière. Les informations classiques stockées dans l’arborescence des préférences système peuvent inclure des données de configuration d’installation pour une application.

Les nœuds d’une arborescence de préférences sont nommés de la même manière que les répertoires dans un système de fichiers hiérarchique. Chaque nœud d’une arborescence de préférences a un nom de nœud (qui n’est pas nécessairement unique), un nom de chemin absolu unique et un nom de chemin d’accès relatif à chaque ancêtre, y compris lui-même.

Le nœud racine a un nom de nœud de la chaîne vide ( » « ). Chaque autre nœud a un nom de nœud arbitraire, spécifié au moment de sa création. Les seules restrictions sur ce nom sont qu’il ne peut pas s’agir de la chaîne vide et qu’elle ne peut pas contenir le caractère de barre oblique ('/').

Le nœud racine a un nom de chemin d’accès absolu de "/". Les enfants du nœud racine ont des noms absolus de chemin d’accès de < nom du nœud>. Tous les autres nœuds ont des noms de chemin d’accès absolus de < nom absolu du chemin d’accès du parent>< nom du nœud>. Notez que tous les noms de chemin d’accès absolus commencent par le caractère barre oblique.

Le nom du chemin d’accès d’un nœud n par rapport à son ancêtre est simplement la chaîne qui doit être ajoutée au nom de chemin absolu d’un pour former le nom du chemin absolu de n, avec le caractère de barre oblique initiale (le cas échéant) supprimé. Notez que : <ul><li>Aucun nom de chemin relatif commence par le caractère oblique. <le>nom du chemin d’accès de chaque nœud par rapport à lui-même est la chaîne vide. <li>Chaque nom de chemin d’accès de chaque nœud par rapport à son parent est son nom de nœud (à l’exception du nœud racine, qui n’a pas de parent). <Li>Chaque nom de chemin d’accès de chaque nœud par rapport à la racine est son nom de chemin absolu avec le caractère de barre oblique initiale supprimé. </ul>

Notez enfin que : <ul><li>No path name contient plusieurs caractères de barre oblique consécutive. <Li>Aucun nom de chemin d’accès à l’exception du nom de chemin absolu de la racine se termine par le caractère oblique. <li>Toute chaîne conforme à ces deux règles est un nom de chemin d’accès valide. </ul>

Toutes les méthodes qui modifient les données de préférences sont autorisées à fonctionner de manière asynchrone ; ils peuvent retourner immédiatement, et les modifications se propageront finalement au magasin de stockage persistant avec un délai dépendant de l’implémentation. La flush méthode peut être utilisée pour forcer de manière synchrone les mises à jour du magasin de stockage. L’arrêt normal de la machine virtuelle Java n’entraîne pas la perte de mises à jour en attente . Un appel explicite flush n’est pas requis lors de l’arrêt pour s’assurer que les mises à jour en attente sont rendues persistantes.

Toutes les méthodes qui lisent les préférences d’un Preferences objet nécessitent que l’appelant fournisse une valeur par défaut. La valeur par défaut est retournée si aucune valeur n’a été définie précédemment ou si le magasin de stockage n’est pas disponible. L’intention est de permettre aux applications de fonctionner, bien qu’avec des fonctionnalités légèrement dégradées, même si le magasin de stockage devient indisponible. Plusieurs méthodes, comme flushcelles-ci, ont une sémantique qui les empêche de fonctionner si le magasin de stockage n’est pas disponible. Les applications ordinaires ne doivent pas avoir besoin d’appeler l’une de ces méthodes, qui peuvent être identifiées par le fait qu’elles sont déclarées à lever BackingStoreException.

Les méthodes de cette classe peuvent être appelées simultanément par plusieurs threads dans une même machine virtuelle JVM sans avoir besoin de synchronisation externe, et les résultats sont équivalents à une exécution série. Si cette classe est utilisée simultanément par plusieurs machines virtuelles JV qui stockent leurs données de préférence dans le même magasin de stockage, le magasin de données ne sera pas endommagé, mais aucune autre garantie n’est faite concernant la cohérence des données de préférence.

Cette classe contient une installation d’exportation/importation, ce qui permet aux préférences d’être « exportées » vers un document XML et les documents XML représentant les préférences à « importer » dans le système. Cette fonctionnalité peut être utilisée pour sauvegarder toute ou partie d’une arborescence de préférences, puis restaurer à partir de la sauvegarde.

Le document XML a la déclaration DOCTYPE suivante :

{@code
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
            }

Notez que l’URI système (http://java.sun.com/dtd/preferences.dtd)n’est pas accessible lors de l’exportation ou de l’importation de préférences ; il sert simplement de chaîne pour identifier de manière unique le DTD, qui est :

{@code
<?xml version="1.0" encoding="UTF-8"?>

<!-- DTD for a Preferences tree. -->

<!-- The preferences element is at the root of an XML document
                    representing a Preferences tree. -->
<!ELEMENT preferences (root)>

<!-- The preferences element contains an optional version attribute,
                     which specifies version of DTD. -->
<!ATTLIST preferences EXTERNAL_XML_VERSION CDATA "0.0" >

<!-- The root element has a map representing the root's preferences
                    (if any), and one node for each child of the root (if any). -->
<!ELEMENT root (map, node*) >

<!-- Additionally, the root contains a type attribute, which
                    specifies whether it's the system or user root. -->
<!ATTLIST root
                         type (system|user) #REQUIRED >

<!-- Each node has a map representing its preferences (if any),
                    and one node for each child (if any). -->
<!ELEMENT node (map, node*) >

<!-- Additionally, each node has a name attribute -->
<!ATTLIST node
                         name CDATA #REQUIRED >

<!-- A map represents the preferences stored at a node (if any). -->
<!ELEMENT map (entry*) >

<!-- An entry represents a single preference, which is simply
                     a key-value pair. -->
<!ELEMENT entry EMPTY >
<!ATTLIST entry
                         key   CDATA #REQUIRED
                         value CDATA #REQUIRED >
            }

Chaque Preferences implémentation doit avoir une implémentation associée PreferencesFactory . Chaque implémentation se Java(TM) doit fournir un moyen de spécifier l’implémentation PreferencesFactory utilisée pour générer les nœuds de préférences racines. Cela permet à l’administrateur de remplacer l’implémentation des préférences par défaut par une autre implémentation.

Remarque d’implémentation : Dans le JRE de Sun, l’implémentation PreferencesFactory se trouve comme suit :

<ol>

<li>

Si la propriété java.util.prefs.PreferencesFactory système est définie, il est nécessaire d’être le nom complet d’une classe implémentant l’interface PreferencesFactory . La classe est chargée et instanciée ; si ce processus échoue, une erreur non spécifiée est levée.

</li>

<li>

Si un PreferencesFactory fichier de classe d’implémentation a été installé dans un fichier jar visible par le java.lang.ClassLoader#getSystemClassLoader system class loaderfichier jar et que ce fichier jar contient un fichier de configuration de fournisseur nommé java.util.prefs.PreferencesFactory dans le répertoire META-INF/servicesde ressources, le nom de la première classe spécifié dans ce fichier est pris. Si plusieurs fichiers jar de ce type sont fournis, le premier trouvé est utilisé. La classe est chargée et instanciée ; si ce processus échoue, une erreur non spécifiée est levée.

</li>

<li>

Enfin, si ni la propriété système mentionnée ci-dessus ni un fichier jar d’extension n’est fourni, l’implémentation par défaut PreferencesFactory à l’échelle du système pour la plateforme sous-jacente est chargée et instanciée.

</li>

</ol>

Ajouté dans la version 1.4.

Java documentation pour java.util.prefs.Preferences.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

Constructeurs

Nom Description
Preferences()

Constructeur unique.

Preferences(IntPtr, JniHandleOwnership)

Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime.

Champs

Nom Description
MaxKeyLength

Longueur maximale de chaîne autorisée en tant que clé (80 caractères).

MaxNameLength

Longueur maximale d’un nom de nœud (80 caractères).

MaxValueLength

Longueur maximale de chaîne autorisée en tant que valeur (8192 caractères).

Propriétés

Nom Description
Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
IsUserNode

Retourne si c’est un nœud de préférence utilisateur.

JniIdentityHashCode

Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité.

(Hérité de Object)
JniManagedPeerState

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
JniPeerMembers

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

PeerReference

Obtient la référence d’objet JNI pour cet homologue Java.

(Hérité de Object)
ThresholdClass

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

ThresholdType

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

Méthodes

Nom Description
AbsolutePath()

Retourne le nom absolu du chemin d’accès absolu de ce nœud de préférence.

AddNodeChangeListener(INodeChangeListener)

Inscrit l’écouteur spécifié pour recevoir les événements de modification de nœud pour ce nœud.

AddPreferenceChangeListener(IPreferenceChangeListener)

Inscrit l’écouteur spécifié pour recevoir les événements de modification de préférence pour ce nœud de préférence.

ChildrenNames()

Retourne les noms des enfants de ce nœud de préférence, par rapport à ce nœud.

Clear()

Supprime toutes les préférences (associations clé-valeur) dans ce nœud de préférence.

Clone()

Crée et retourne une copie de cet objet.

(Hérité de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
Dispose()

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
Dispose(Boolean)

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
DisposeUnlessReferenced()

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
Equals(Object)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
ExportNode(Stream)

Émet sur le flux de sortie spécifié un document XML représentant toutes les préférences contenues dans ce nœud (mais pas ses descendants).

ExportNodeAsync(Stream)

Émet de façon asynchrone un document XML représentant toutes les préférences contenues dans ce nœud, mais pas ses descendants.

ExportSubtree(Stream)

Émet un document XML représentant toutes les préférences contenues dans ce nœud et tous ses descendants.

ExportSubtreeAsync(Stream)

Émet de façon asynchrone un document XML représentant toutes les préférences contenues dans ce nœud et tous ses descendants.

Flush()

Force les modifications apportées au contenu de ce nœud de préférence et à ses descendants au magasin persistant.

FlushAsync()

Force de façon asynchrone les modifications apportées à ce nœud de préférence et à ses descendants au magasin persistant.

Get(String, String)

Retourne la valeur associée à la clé spécifiée dans ce nœud de préférence.

GetBoolean(String, Boolean)

Retourne la valeur booléenne représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

GetByteArray(String, Byte[])

Retourne la valeur du tableau d’octets représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

GetDouble(String, Double)

Retourne la valeur double représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

GetFloat(String, Single)

Retourne la valeur float représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

GetHashCode()

Retourne une valeur de code de hachage pour l’objet.

(Hérité de Object)
GetInt(String, Int32)

Retourne la valeur int représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

GetLong(String, Int64)

Retourne la valeur longue représentée par la chaîne associée à la clé spécifiée dans ce nœud de préférence.

ImportPreferences(Stream)

Importe toutes les préférences représentées par le document XML sur le flux d’entrée spécifié.

ImportPreferencesAsync(Stream)

Importe de façon asynchrone toutes les préférences représentées par le document XML sur le flux d’entrée spécifié.

JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
Keys()

Retourne toutes les clés qui ont une valeur associée dans ce nœud de préférence.

Name()

Retourne le nom de ce nœud de préférence, par rapport à son parent.

Node(String)

Retourne le nœud de préférence nommé dans la même arborescence que ce nœud, en le créant et l’un de ses ancêtres s’ils n’existent pas déjà.

NodeExists(String)

Retourne true si le nœud de préférence nommée existe dans la même arborescence que ce nœud.

Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
Parent()

Retourne le parent de ce nœud de préférence, ou null s’il s’agit de la racine.

Put(String, String)

Associe la valeur spécifiée à la clé spécifiée dans ce nœud de préférence.

PutBoolean(String, Boolean)

Associe une chaîne représentant la valeur booléenne spécifiée à la clé spécifiée dans ce nœud de préférence.

PutByteArray(String, Byte[])

Associe une chaîne représentant le tableau d’octets spécifié à la clé spécifiée dans ce nœud de préférence.

PutDouble(String, Double)

Associe une chaîne représentant la valeur double spécifiée à la clé spécifiée dans ce nœud de préférence.

PutFloat(String, Single)

Associe une chaîne représentant la valeur float spécifiée à la clé spécifiée dans ce nœud de préférence.

PutInt(String, Int32)

Associe une chaîne représentant la valeur int spécifiée à la clé spécifiée dans ce nœud de préférence.

PutLong(String, Int64)

Associe une chaîne représentant la valeur longue spécifiée à la clé spécifiée dans ce nœud de préférence.

Remove(String)

Supprime la valeur associée à la clé spécifiée dans ce nœud de préférence, le cas échéant.

RemoveNode()

Supprime ce nœud de préférence et tous ses descendants, invalidant toutes les préférences contenues dans les nœuds supprimés.

RemoveNodeChangeListener(INodeChangeListener)

Supprime l’élément spécifié NodeChangeListener, de sorte qu’il ne reçoit plus d’événements de modification.

RemovePreferenceChangeListener(IPreferenceChangeListener)

Supprime l’écouteur de modification de préférence spécifié, de sorte qu’il ne reçoit plus les événements de modification de préférence.

SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
Sync()

Garantit que les lectures futures à partir de ce nœud de préférence et de ses descendants reflètent les modifications qui ont été validées dans le magasin persistant (à partir de n’importe quelle machine virtuelle) avant l’appel sync .

SyncAsync()

Synchronise de façon asynchrone ce nœud de préférence et ses descendants avec le magasin persistant.

SystemNodeForPackage(Class)

< >strong WARNING :</strong> On Android, les nœuds De préférence correspondant aux préférences « système » et « utilisateur » sont stockés dans des sections du système de fichiers qui sont inaccessibles aux applications.

SystemRoot()

< >strong WARNING :</strong> On Android, les nœuds De préférence correspondant aux préférences « système » et « utilisateur » sont stockés dans des sections du système de fichiers qui sont inaccessibles aux applications.

ToArray<T>()

Crée un tableau managé à partir de ce wrapper de tableau Java.

(Hérité de Object)
ToString()

Retourne une représentation sous forme de chaîne de ce nœud de préférences, comme si elle était calculée par l’expression :(this.isUserNode() ? "User" : "System") + " Preference Node: " + this.absolutePath().

UnregisterFromRuntime()

Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité.

(Hérité de Object)
UserNodeForPackage(Class)

< >strong WARNING :</strong> On Android, les nœuds De préférence correspondant aux préférences « système » et « utilisateur » sont stockés dans des sections du système de fichiers qui sont inaccessibles aux applications.

UserRoot()

< >strong WARNING :</strong> On Android, les nœuds De préférence correspondant aux préférences « système » et « utilisateur » sont stockés dans des sections du système de fichiers qui sont inaccessibles aux applications.

Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IJavaPeerable.Disposed()

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
IJavaPeerable.Finalized()

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Nœud dans une collection hiérarchique de données de préférence.

(Hérité de JavaObject)

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Nœud dans une collection hiérarchique de données de préférence.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à