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)

  • ¿Cómo activar el botón "Compartir" en la aplicación Android?
  • ¿Existe una etiqueta XML equivalente a `ListView.addHeaderView '?
  • ¿Se puede crear un filtro de intención basado en la consulta?
  • Error al buscar el estilo mapViewStyle
  • Android: DigitalClock eliminar segundos
  • Cómo burlar getApplicationContext
  • 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?

  • Visualización de la fecha en formato de doble dígito
  • Android Sqlite - "No hay tal tabla" Error
  • Android - Eliminación del botón de inicio y de navegación
  • ¿Cómo rebatir una solicitud reactiva retrofit en java?
  • Android AutoCompleteTextView con chips
  • Importar proyecto eclipse al estudio de Android - error "este proyecto se refiere al espacio de trabajo de Eclipse ..."
  • 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.