Preferences Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Nodo de una colección jerárquica de datos de preferencias.
[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
- Herencia
- Derivado
- Atributos
Comentarios
Nodo de una colección jerárquica de datos de preferencias. Esta clase permite a las aplicaciones almacenar y recuperar datos de configuración y preferencias del usuario y del sistema. Estos datos se almacenan de forma persistente en un almacén de respaldo dependiente de la implementación. Las implementaciones típicas incluyen archivos planos, registros específicos del sistema operativo, servidores de directorios y bases de datos SQL. El usuario de esta clase no necesita preocuparse por los detalles del almacén de respaldo.
Hay dos árboles independientes de nodos de preferencia, uno para las preferencias de usuario y otro para las preferencias del sistema. Cada usuario tiene un árbol de preferencias de usuario independiente y todos los usuarios de un sistema determinado comparten el mismo árbol de preferencias del sistema. La descripción precisa de "usuario" y "sistema" variará de la implementación a la implementación. La información típica almacenada en el árbol de preferencias de usuario puede incluir la opción de fuente, la opción de color o la ubicación y el tamaño preferidos de la ventana para una aplicación determinada. La información típica almacenada en el árbol de preferencias del sistema puede incluir datos de configuración de instalación para una aplicación.
Los nodos de un árbol de preferencias se denominan de forma similar a los directorios de un sistema de archivos jerárquico. Cada nodo de un árbol de preferencias tiene un nombre de nodo (que no es necesariamente único), un nombre de ruta de acceso absoluto único y un nombre de ruta de acceso relativo a cada antecesor incluido.
El nodo raíz tiene un nombre de nodo de la cadena vacía (""). Cada otro nodo tiene un nombre de nodo arbitrario, especificado en el momento en que se crea. Las únicas restricciones de este nombre son que no puede ser la cadena vacía y no puede contener el carácter de barra diagonal ('/').
El nodo raíz tiene un nombre de ruta de acceso absoluto de "/". Los elementos secundarios del nodo raíz tienen nombres de ruta de acceso absolutos de
El nombre de ruta de acceso de un nodo n con respecto a su antecesor es simplemente la cadena que se debe anexar al nombre de ruta de acceso absoluta de un nodo para formar el nombre de ruta de acceso absoluta de n, con el carácter de barra diagonal inicial (si está presente) quitado. Tenga en cuenta que: <ul><li>No hay nombres de ruta de acceso relativos comienzan con el carácter de barra diagonal. <li>El nombre de ruta de acceso de cada nodo relativo a sí mismo es la cadena vacía. <li>El nombre de ruta de acceso de cada nodo relativo a su elemento primario es su nombre de nodo (excepto para el nodo raíz, que no tiene un elemento primario). <li>El nombre de ruta de acceso de cada nodo relativo a la raíz es su nombre de ruta de acceso absoluto con el carácter de barra diagonal inicial quitado. </ul>
Tenga en cuenta que: <ul><li>No path name contiene varios caracteres de barra diagonal consecutivos. <li>No hay nombre de ruta de acceso con la excepción del nombre de ruta de acceso absoluta de la raíz termina en el carácter de barra diagonal. <li>Cualquier cadena que se ajuste a estas dos reglas es un nombre de ruta de acceso válido. </ul>
Todos los métodos que modifican los datos de preferencias pueden operar de forma asincrónica; pueden devolver inmediatamente y los cambios se propagarán finalmente al almacén de respaldo persistente con un retraso dependiente de la implementación. El flush método se puede usar para forzar de forma sincrónica las actualizaciones en el almacén de respaldo. La terminación normal de la máquina virtual de Java no provocará la pérdida de actualizaciones pendientes: flush se requiere una invocación explícita tras la finalización para asegurarse de que las actualizaciones pendientes se realicen de forma persistente.
Todos los métodos que leen las preferencias de un Preferences objeto requieren que el invocador proporcione un valor predeterminado. El valor predeterminado se devuelve si no se ha establecido previamente ningún valor o si el almacén de respaldo no está disponible. La intención es permitir que las aplicaciones funcionen, aunque con una funcionalidad ligeramente degradada, incluso si el almacén de respaldo deja de estar disponible. Varios métodos, como flush, tienen semántica que impiden que funcionen si el almacén de respaldo no está disponible. Las aplicaciones ordinarias no deben tener necesidad de invocar ninguno de estos métodos, que se pueden identificar por el hecho de que se declaran para iniciar BackingStoreException.
Los métodos de esta clase pueden invocarse simultáneamente por varios subprocesos en una sola JVM sin necesidad de sincronización externa y los resultados serán equivalentes a alguna ejecución serie. Si varias JVM usan esta clase simultáneamente que almacenan sus datos de preferencia en el mismo almacén de respaldo, el almacén de datos no se dañará, pero no se realizará ninguna otra garantía con respecto a la coherencia de los datos de preferencia.
Esta clase contiene una instalación de exportación e importación, lo que permite que las preferencias se "exporten" a un documento XML y los documentos XML que representan las preferencias que se van a "importar" al sistema. Esta instalación se puede usar para realizar copias de seguridad de todo o parte de un árbol de preferencias y, posteriormente, restaurar desde la copia de seguridad.
El documento XML tiene la siguiente declaración DOCTYPE:
{@code
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
}
Tenga en cuenta que el URI del sistema (http://java.sun.com/dtd/preferences.dtd)no se tiene acceso al exportar o importar preferencias; simplemente sirve como una cadena para identificar de forma única el DTD, que es:
{@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 >
}
Cada Preferences implementación debe tener una implementación asociada PreferencesFactory . Cada implementación de Java(TM) SE debe proporcionar algún medio para especificar qué PreferencesFactory implementación se usa para generar los nodos de preferencias raíz. Esto permite al administrador reemplazar la implementación de preferencias predeterminada por una implementación alternativa.
Nota de implementación: En JRE de Sun, la implementación se encuentra de la PreferencesFactory siguiente manera:
<ol>
<li>
Si se define la propiedad java.util.prefs.PreferencesFactory del sistema, se toma como el nombre completo de una clase que implementa la PreferencesFactory interfaz. La clase se carga y crea una instancia; si se produce un error en este proceso, se produce un error no especificado.
</li>
<li>
Si se ha instalado un PreferencesFactory archivo de clase de implementación en un archivo jar visible para y java.lang.ClassLoader#getSystemClassLoader system class loaderese archivo jar contiene un archivo de configuración de proveedor denominado java.util.prefs.PreferencesFactory en el directorio META-INF/servicesde recursos , se toma el nombre de la primera clase especificado en ese archivo. Si se proporciona más de un archivo jar de este tipo, se usará el primero encontrado. La clase se carga y crea una instancia; si se produce un error en este proceso, se produce un error no especificado.
</li>
<li>
Por último, si no se proporciona ni la propiedad del sistema mencionada anteriormente ni un archivo jar de extensión, se carga y crea una instancia de la implementación predeterminada PreferencesFactory de todo el sistema para la plataforma subyacente.
</li>
</ol>
Agregado en la versión 1.4.
Java documentación para java.util.prefs.Preferences.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Constructores
| Nombre | Description |
|---|---|
| Preferences() |
Constructor único. |
| Preferences(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Campos
| Nombre | Description |
|---|---|
| MaxKeyLength |
Longitud máxima de cadena permitida como clave (80 caracteres). |
| MaxNameLength |
Longitud máxima de un nombre de nodo (80 caracteres). |
| MaxValueLength |
Longitud máxima de cadena permitida como un valor (8192 caracteres). |
Propiedades
| Nombre | Description |
|---|---|
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| IsUserNode |
Devuelve si se trata de un nodo de preferencia de usuario. |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| JniPeerMembers |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
Métodos
| Nombre | Description |
|---|---|
| AbsolutePath() |
Devuelve el nombre de ruta de acceso absoluta de este nodo de preferencia. |
| AddNodeChangeListener(INodeChangeListener) |
Registra el agente de escucha especificado para recibir eventos de cambio de nodo para este nodo. |
| AddPreferenceChangeListener(IPreferenceChangeListener) |
Registra el agente de escucha especificado para recibir eventos de cambio de preferencias para este nodo de preferencia. |
| ChildrenNames() |
Devuelve los nombres de los elementos secundarios de este nodo de preferencia, en relación con este nodo. |
| Clear() |
Quita todas las preferencias (asociaciones clave-valor) en este nodo de preferencia. |
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| Equals(Object) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| ExportNode(Stream) |
Emite en el flujo de salida especificado un documento XML que representa todas las preferencias contenidas en este nodo (pero no sus descendientes). |
| ExportNodeAsync(Stream) |
Emite de forma asincrónica un documento XML que representa todas las preferencias contenidas en este nodo, pero no sus descendientes. |
| ExportSubtree(Stream) |
Emite un documento XML que representa todas las preferencias contenidas en este nodo y todos sus descendientes. |
| ExportSubtreeAsync(Stream) |
Emite de forma asincrónica un documento XML que representa todas las preferencias contenidas en este nodo y todos sus descendientes. |
| Flush() |
Fuerza los cambios en el contenido de este nodo de preferencia y sus descendientes al almacén persistente. |
| FlushAsync() |
Fuerza asincrónicamente los cambios en este nodo de preferencia y sus descendientes al almacén persistente. |
| Get(String, String) |
Devuelve el valor asociado a la clave especificada en este nodo de preferencia. |
| GetBoolean(String, Boolean) |
Devuelve el valor booleano representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| GetByteArray(String, Byte[]) |
Devuelve el valor de matriz de bytes representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| GetDouble(String, Double) |
Devuelve el valor doble representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| GetFloat(String, Single) |
Devuelve el valor float representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| GetHashCode() |
Devuelve un valor de código hash para el objeto . (Heredado de Object) |
| GetInt(String, Int32) |
Devuelve el valor int representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| GetLong(String, Int64) |
Devuelve el valor long representado por la cadena asociada a la clave especificada en este nodo de preferencia. |
| ImportPreferences(Stream) |
Importa todas las preferencias representadas por el documento XML en el flujo de entrada especificado. |
| ImportPreferencesAsync(Stream) |
Importa de forma asincrónica todas las preferencias representadas por el documento XML en el flujo de entrada especificado. |
| JavaFinalize() |
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Keys() |
Devuelve todas las claves que tienen un valor asociado en este nodo de preferencia. |
| Name() |
Devuelve el nombre de este nodo de preferencia, en relación con su elemento primario. |
| Node(String) |
Devuelve el nodo de preferencia con nombre en el mismo árbol que este nodo, lo crea y cualquiera de sus antecesores si aún no existen. |
| NodeExists(String) |
Devuelve true si el nodo de preferencia con nombre existe en el mismo árbol que este nodo. |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| Parent() |
Devuelve el elemento primario de este nodo de preferencia o |
| Put(String, String) |
Asocia el valor especificado a la clave especificada en este nodo de preferencia. |
| PutBoolean(String, Boolean) |
Asocia una cadena que representa el valor booleano especificado con la clave especificada en este nodo de preferencia. |
| PutByteArray(String, Byte[]) |
Asocia una cadena que representa la matriz de bytes especificada con la clave especificada en este nodo de preferencia. |
| PutDouble(String, Double) |
Asocia una cadena que representa el valor doble especificado con la clave especificada en este nodo de preferencia. |
| PutFloat(String, Single) |
Asocia una cadena que representa el valor float especificado con la clave especificada en este nodo de preferencia. |
| PutInt(String, Int32) |
Asocia una cadena que representa el valor int especificado con la clave especificada en este nodo de preferencia. |
| PutLong(String, Int64) |
Asocia una cadena que representa el valor largo especificado con la clave especificada en este nodo de preferencia. |
| Remove(String) |
Quita el valor asociado a la clave especificada en este nodo de preferencia, si existe. |
| RemoveNode() |
Quita este nodo de preferencia y todos sus descendientes, invalidando las preferencias contenidas en los nodos eliminados. |
| RemoveNodeChangeListener(INodeChangeListener) |
Quita el objeto especificado |
| RemovePreferenceChangeListener(IPreferenceChangeListener) |
Quita el agente de escucha de cambio de preferencias especificado, por lo que ya no recibe eventos de cambio de preferencias. |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| Sync() |
Garantiza que las lecturas futuras de este nodo de preferencia y sus descendientes reflejen los cambios confirmados en el almacén persistente (desde cualquier máquina virtual) antes de la |
| SyncAsync() |
Sincroniza de forma asincrónica este nodo de preferencia y sus descendientes con el almacén persistente. |
| SystemNodeForPackage(Class) |
<strong>WARNING:</strong> En Android, los nodos de preferencias correspondientes a las preferencias "system" y "user" se almacenan en secciones del sistema de archivos que son inaccesibles para las aplicaciones. |
| SystemRoot() |
<strong>WARNING:</strong> En Android, los nodos de preferencias correspondientes a las preferencias "system" y "user" se almacenan en secciones del sistema de archivos que son inaccesibles para las aplicaciones. |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena de este nodo de preferencias, como si se calculara mediante la expresión: |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| UserNodeForPackage(Class) |
<strong>WARNING:</strong> En Android, los nodos de preferencias correspondientes a las preferencias "system" y "user" se almacenan en secciones del sistema de archivos que son inaccesibles para las aplicaciones. |
| UserRoot() |
<strong>WARNING:</strong> En Android, los nodos de preferencias correspondientes a las preferencias "system" y "user" se almacenan en secciones del sistema de archivos que son inaccesibles para las aplicaciones. |
| Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Nodo de una colección jerárquica de datos de preferencias. (Heredado de JavaObject) |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Nodo de una colección jerárquica de datos de preferencias. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |