io.realm
Clase envolvente:
RealmConfiguration.Builder se utiliza para construir instancias de una RealmConfiguration de manera fluida.
Constructores
Constructor y descripción |
|---|
Builder () Crea una instancia del Builder para RealmConfiguration. |
Resumen del método
Modificador y Tipo | Método y descripción |
|---|---|
Configuraciónpública final de Realm.Builder | |
Configuraciónde dominio público.Builder | Establece si se puede iniciar o no un RealmQuery desde el hilo de UI. |
Configuraciónde dominio público.Builder | Establece si se permiten o no las llamadas a Realm.executeTransaction desde el hilo de UI. |
Configuraciónde dominio público.Builder | |
Configuración dedominio público | build () Crea RealmConfiguration en función de los parámetros del generador. |
Configuraciónde dominio público.Builder | Establece esto para determinar si el archivo Realm debe compactarse antes de devolverlo al usuario. |
Configuraciónde dominio público.Builder | Si se configura esta opción, Realm compactará el archivo Realm si este ha crecido demasiado y se podrá recuperar una cantidad significativa de espacio. |
Configuraciónde dominio público.Builder | Establecer esto cambiará el comportamiento de manejo de las excepciones de migración. |
Configuraciónde dominio público.Builder | |
Configuraciónde dominio público.Builder | Establece la clave de 64 bytes utilizada para cifrar y descifrar el archivo Realm. |
Configuraciónde dominio público.Builder | Establece el FlowFactory utilizado para crear flujos de corrutinas desde objetos Realm. |
Configuraciónde dominio público.Builder | inMemory () Establecer esto creará un Realm en memoria en lugar de guardarlo en el disco. |
Configuraciónde dominio público.Builder | Establece los datos iniciales en io.realm.Realm. |
Configuraciónde dominio público.Builder | Establece el número máximo de versiones en vivo en el archivo Realm antes de que se lance una IllegalStateException al intentar escribir más datos. |
Configuraciónde dominio público.Builder | Establece io.realm.RealmMigration para que se ejecute si se necesita una migración. |
Configuraciónde dominio público.Builder | Reemplaza los módulos existentes con uno o más RealmModule. |
Configuraciónde dominio público.Builder | |
Configuraciónde dominio público.Builder | readOnly () Si se configura esto, el Reino pasará a ser de solo lectura y todas las transacciones de escritura realizadas contra este Reino fallarán con una IllegalStateException. |
Configuraciónde dominio público.Builder | Establece RxObservableFactory utilizado para crear Rx Observables a partir de objetos Realm. |
Configuraciónde dominio público.Builder | Establece la versión de esquema del Realm. |
Métodos heredados
Métodos heredados de la clase java.lang.Object:
getClass,hashCode,equals,clone,toString,notify,notifyAll,wait,wait,wait,finalize
Detalle del constructor
public Builder () |
|---|
Crea una instancia del Constructor para RealmConfiguration. Esto usará el directorio interno de la aplicación para almacenar el archivo Realm. No requiere permisos adicionales. La ubicación predeterminada es |
Detalle del método
addModule
FIXME: Método DEBUG visible temporalmente. Agregará un módulo incondicionalmente. Agrega un módulo a los módulos ya definidos. |
permitir consultas en subprocesos de interfaz de usuario
Establece si se puede iniciar o no un RealmQuery desde el hilo de UI. Realm permite consultas en el hilo principal por defecto. Sin embargo, al hacerlo, la aplicación podría experimentar una pérdida de fotogramas o incluso ANR. Recomendamos desviar las consultas a hilos que no sean de interfaz de usuario o, alternativamente, usar RealmQuery.findAllAsync() o RealmQuery.findFirstAsync(). |
permitir escritura en hilo de interfaz de usuario
Establece si se permiten o no las llamadas a Realm.executeTransaction desde el hilo de UI. ADVERTENCIA: Realm no permite la ejecución de transacciones síncronas en el hilo principal a menos que los usuarios lo acepten explícitamente con este método. Recomendamos desviar las llamadas a |
archivo de activos
Copia el archivo Realm desde la ruta del archivo de activo indicada. Al abrir el Realm por primera vez, en lugar de crear un archivo vacío, el archivo Realm se copiará desde el archivo de activo proporcionado y se utilizará en su lugar. Esto no se puede combinar con deleteRealmIfMigrationNeeded() ya que hacerlo solo provocaría la eliminación del archivo copiado. ADVERTENCIA: Esta podría ser una operación larga y lo ideal es que se realice en un hilo en segundo plano. Parámetros
Lanzamientos
|
construir
public RealmConfiguration build () |
|---|
Crea RealmConfiguration en función de los parámetros del generador. Devuelve la RealmConfiguration creada. |
compactoAlLanzar
Establece esto para determinar si el archivo Realm debe compactarse antes de devolverse al usuario. Se le pasa el tamaño total del archivo (datos + espacio libre) y los bytes utilizados por los datos del archivo. Parámetros
|
public RealmConfiguration.Builder compactOnLaunch () |
|---|
Al configurar esto, Realm compactará el archivo si este ha crecido demasiado y se puede recuperar una cantidad significativa de espacio.Consulte DefaultCompactOnLaunchCallback para obtener más información. |
eliminarReinoSiSeNecesitaMigración
Al configurar esto, se cambiará el comportamiento de gestión de las excepciones de migración. En lugar de generar una excepción io.realm.exceptions.RealmMigrationNeededException, el dominio en disco se borrará y se volverá a crear con el nuevo esquema. Esto no se puede configurar para tener un archivo de activos al mismo tiempo llamando a assetFile(String) ya que el archivo de activos proporcionado se eliminará en las migraciones. ¡ADVERTENCIA! Esto provocará la pérdida de datos. Lanzamientos
|
directorio
Especifica el directorio donde se guardará el archivo de Realm. El valor predeterminado es Parámetros
Lanzamientos
|
clave de cifrado
Establece la clave de 64 bytes utilizada para cifrar y descifrar el archivo Realm. Establece la clave de io.realm.Realm#ENCRYPTION_KEY_LENGTH bytes utilizada para cifrar y descifrar el archivo Realm. |
Fábrica de flujo
Establece la fábrica de flujos utilizada para crear flujos de corrutinas a partir de objetos de Realm. La fábrica predeterminada es RealmFlowFactory. Parámetros
|
en memoria
public RealmConfiguration.Builder inMemory () |
|---|
Al configurar esto, se creará un dominio en memoria en lugar de guardarlo en el disco. Los dominios en memoria podrían seguir usando espacio en disco si la memoria es insuficiente, pero todos los archivos creados por un dominio en memoria se eliminarán al cerrarlo. Tenga en cuenta que, dado que los dominios en memoria no se almacenan en memoria, debe asegurarse de conservar al menos una referencia no cerrada al objeto del dominio en memoria con el nombre específico mientras desee que los datos perduren. |
initialData
Establece los datos iniciales en io.realm.Realm. Esta transacción solo se ejecutará la primera vez al crear el archivo de base de datos o al migrar los datos si Builder.deleteRealmIfMigrationNeeded() está configurado. Parámetros
|
Número máximo de versiones activas
Establece el número máximo de versiones en vivo en el archivo Realm antes de que se lance una IllegalStateException al intentar escribir más datos. Realm puede gestionar simultáneamente varias versiones diferentes de objetos de Realm. Esto puede ocurrir, por ejemplo, si un Realm está abierto en varios subprocesos o si se bloquean objetos mientras se escriben datos en el archivo. En circunstancias normales, esto no supone un problema, pero si el número de versiones activas aumenta demasiado, afectará negativamente el tamaño del archivo en disco. Por lo tanto, configurar estos parámetros puede utilizarse para evitar usos de Realm que puedan resultar en Realms muy grandes. Parámetros
Tip |
migration
Establece que io.realm.RealmMigration se ejecute si se requiere una migración. Si esta migración no actualiza el esquema en disco al esquema en tiempo de ejecución, se generará una excepción io.realm.exceptions.RealmMigrationNeededException. |
modules
Reemplaza los módulos existentes con uno o más RealmModule. Este método reemplaza el esquema actual de este dominio con el esquema definido por los módulos proporcionados. Se puede encontrar una referencia al módulo Realm predeterminado que contiene todas las clases Realm del proyecto (pero no sus dependencias) mediante Realm.getDefaultModule(). La combinación del esquema del proyecto de la aplicación y una dependencia de biblioteca se realiza mediante el siguiente código:
Parámetros
Lanzamientos
|
Nombre
Establece el nombre de archivo para el archivo Realm. |
Solo lectura
public RealmConfiguration.Builder readOnly () |
|---|
Si se configura esto, el Reino pasará a ser de solo lectura y todas las transacciones de escritura realizadas contra este Reino fallarán con una IllegalStateException. Esto en particular significa que initialData(Realm.Transaction) no funcionará en combinación con un Realm de solo lectura y configurar esto dará como resultado que se arroje una IllegalStateException. Marcar un dominio como de solo lectura solo se aplica al dominio en este proceso. Otros procesos aún pueden escribir en él. |
Fábrica rx
Establece la RxObservableFactory que se usa para crear Rx Observables a partir de objetos Realm. La fábrica por defecto es RealmObservableFactory . Parámetros
|