Share via


Preferences.UserNodeForPackage(Class) Método

Definición

<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 no son accesibles para las aplicaciones.

[Android.Runtime.Register("userNodeForPackage", "(Ljava/lang/Class;)Ljava/util/prefs/Preferences;", "")]
public static Java.Util.Prefs.Preferences? UserNodeForPackage (Java.Lang.Class? c);
[<Android.Runtime.Register("userNodeForPackage", "(Ljava/lang/Class;)Ljava/util/prefs/Preferences;", "")>]
static member UserNodeForPackage : Java.Lang.Class -> Java.Util.Prefs.Preferences

Parámetros

c
Class

la clase para cuyo paquete se desea un nodo de preferencia de usuario.

Devoluciones

el nodo de preferencia de usuario asociado al paquete del que c es miembro.

Atributos

Comentarios

<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 no son accesibles para las aplicaciones. Además, permitir que las aplicaciones establezcan preferencias "en todo el sistema" es contraria al modelo de seguridad de Android.

Devuelve el nodo de preferencia del árbol de preferencias del usuario que realiza la llamada asociado (por convención) con el paquete de la clase especificada. La convención es la siguiente: el nombre de ruta de acceso absoluta del nodo es el nombre completo del paquete, precedido por una barra diagonal ('/') y por cada punto ('.') reemplazado por una barra diagonal. Por ejemplo, el nombre de ruta de acceso absoluta del nodo asociado a la clase com.acme.widget.Foo es /com/acme/widget.

Esta convención no se aplica al paquete sin nombre, cuyo nodo de preferencia asociado es &lt;unnamed&gt;. Este nodo no está pensado para uso a largo plazo, pero para mayor comodidad en el desarrollo temprano de programas que aún no pertenecen a un paquete y para programas "descartados". Los datos valiosos no se deben almacenar en este nodo, ya que todos los programas que lo usan lo comparten.

Una clase Foo que desea obtener las preferencias de acceso que pertenecen a su paquete puede obtener un nodo de preferencia de la siguiente manera:

static Preferences prefs = Preferences.userNodeForPackage(Foo.class);

Este lenguaje obvia la necesidad de usar una cadena para describir el nodo de preferencias y disminuye la probabilidad de que se produzca un error en tiempo de ejecución. (Si el nombre de la clase está mal escrito, normalmente producirá un error en tiempo de compilación).

Al invocar este método, se creará el nodo devuelto y sus antecesores si aún no existen. Si el nodo devuelto no existía antes de esta llamada, no se garantiza que este nodo y los antecesores creados por esta llamada se conviertan en permanentes hasta que se llame al flush método en el nodo devuelto (o uno de sus antecesores o descendientes).

Documentación de Java para java.util.prefs.Preferences.userNodeForPackage(java.lang.Class<?>).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código y se usan según los términos descritos en la creative Commons 2.5.

Se aplica a