Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Reino: utilice uno o varios reinos en una aplicación (y uno o varios esquemas)

Estoy implementando una aplicación que persiste datos en algunos puntos (no relacionados entre ellos) usando Realm. Por ejemplo:

  1. Guarde los elementos que el usuario prefiera.
  2. (La aplicación tiene un chat) Guardar las conversaciones de chat y las constantes recientes
  3. Implementar una caché persistente para algunas solicitudes de la aplicación
  4. Guardar búsquedas recientes / formulario para proporcionar el autocompletado

(Permite nombrar cada uno de esos puntos como un módulo / paquete)

  • Android Java: ¿Cómo restar dos veces?
  • Cómo corregir este error "Límite de sobrecarga de GC excedido en Eclipse"
  • Cómo obtener un icono asociado con una cuenta específica de AccountManager.getAccounts ()
  • El exponente privado de Android KeyStore no se puede extraer
  • Métodos estáticos o Singletons rendimiento-sabio (Android)?
  • Java.lang.verifyerror ¿cómo puedo arreglar o incluso averiguar la causa raíz?
  • Cada módulo / paquete tiene algunos RealmObjects para persistir. ¿Cómo debo organizar esto? Desde el punto de vista de la limpieza del código, el rendimiento o lo que yo deba cuidar

    Opción A: Utilizar un dominio único (predeterminado) con un esquema único:

    Utilizar Realm.getInstance(context)

    Acceso a los RealmObjects adecuados en cada módulo / paquete

    Opción B: Utilizar varios dominios con el esquema predeterminado

    Especifique un nombre diferente en RealmConfiguration para el dominio utilizado en cada módulo (utilizando el esquema predeterminado).

    Dado que los datos pertenecen a diferentes partes de la aplicación, aislados y no interconectados, utilice diferentes nombres de dominio para cada módulo.

    Opción C: Utilizar dominios múltiples y ámbito de aplicación Las clases de modelo utilizadas con un esquema por paquete de aplicación Especifique un nombre y un esquema para cada paquete aislado. Por ejemplo:

     public static Realm getChat(Context context){ RealmConfiguration config = new RealmConfiguration.Builder(context) .name("chat.realm") .schemaVersion(1) .setModules(new ChatRealmModule()) .build(); return Realm.getInstance(config); } // Create the module @RealmModule(classes = { ChatRoom.class, ChatMessage.class, ChatUser.class}) public static class ChatRealmModule{ } 

    Opción D: ¿Otros?

  • ¿Por qué la cámara del emulador androide se detiene inesperadamente?
  • CollapsingToolbarLayout no reconoce el desplazamiento
  • Android (Java) los recursos de programación de red
  • Android BroadcastReceiver onReceive Actualizar TextView en MainActivity
  • Sincronización de dos ListViews lado a lado de Android
  • Creación de una casilla de verificación de tres estados en android
  • One Solution collect form web for “Reino: utilice uno o varios reinos en una aplicación (y uno o varios esquemas)”

    Si sus datos están realmente completamente desconectados, yo iría con la opción C) Hace para una separación limpia. Las migraciones son más fáciles de manejar, y también hay una ganancia de rendimiento muy pequeña como Realm tiene que pasar por todas las clases de modelo en un reino de vez en cuando.

    Pero ninguna de las opciones son "incorrectas".

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.