Cómo guardar los datos de la aplicación de Android en la salida de la aplicación
Parece que hay una gran cantidad de información sobre el estado de la actividad de ahorro, pero no he podido localizar mucho en encontrar el estado de la aplicación .
Estoy buscando algunas ideas de diseño para resolver un problema que he encontrado. Estoy desarrollando un juego que tiene un modelo de datos bastante grande (1-2 MBytes). Este modelo existe fuera de cualquier actividad, de hecho hay numerosas actividades que interactúan con ella. Estas actividades son transitorias, yendo y viniendo todo el tiempo.
- ¿Cómo almacenar datos persistentes fácilmente sin usar bases de datos?
- Cómo mantener los datos persistentes en android
- ¿Alguien ha intentado usar javax.persistence en Android?
- Android: guardando el estado de la aplicación al ir al "fondo"
- ¿Qué es una buena manera de almacenar un objeto de ubicación?
Actualmente mantengo un puntero al modelo de datos en mi aplicación y todas las actividades acceden al modelo de datos a través de él. Necesito guardar ese modelo de datos en el caso de que mi aplicación se está matando, pero es demasiado lento para guardarlo cada vez que una actividad golpea en la pausa, que ocurre con mucha frecuencia a medida que las actividades van y vienen.
Lo que necesito es una forma de determinar que mi aplicación (y junto con ella mi modelo de datos) están siendo destruidas. He buscado extensivamente este método o devolución de llamada y he venido vacío.
Apreciaria cualquier sugerencia.
- Por qué definir Flowable podría recibir actualizaciones de la base de datos
- ¿Cómo almacenar datos para un widget?
- Persistencia de Polyglot en Android
- ¿Cómo puedo guardar la configuración de mi aplicación sin usar una base de datos ??? (Utilizando archivos de texto simples)
- ¿Es el cierre y la reapertura de las instancias de Realm malas para el rendimiento?
- ¿Están estáticas las versiones de la identificación del recurso R.xxx.xxx?
- Cordova LocalStorage persiste datos incluso después de la desinstalación de la aplicación
- Qué datos se eliminarán si un usuario desinstala una aplicación de Android
No he podido encontrar mucho en encontrar el estado de la aplicación.
Eso es porque no hay "estado de la aplicación" en Android, más de lo que hay en una aplicación web.
Pero es demasiado lento para guardarlo cada vez que una actividad golpea enPause
Mientras que su modelo de datos completo puede ser "1-2 MBytes", pero la cantidad de datos que cambia va a ser un pequeño subconjunto de eso, para cualquier cambio dado. Utilice un subproceso de fondo y sólo modifique los datos que han cambiado.
Que sucede muy a menudo como las actividades vienen y van
Suena como quizás tienes demasiadas actividades.
Lo que necesito es una forma de determinar que mi aplicación (y junto con ella mi modelo de datos) están siendo destruidas
Eso no es posible. Nunca descubrirás que estás siendo destruido. Android puede y terminará su proceso sin previo aviso, ya sea a petición del usuario (por ejemplo, Fuerza cerrada, asesino de tareas) o por razones de sistema operativo (por ejemplo, necesita la memoria RAM para manejar una llamada telefónica entrante).
Usted es bienvenido a usar onUserLeaveHint()
, que se llama en un número de casos cuando toda la aplicación pierde el primer plano, pero ciertamente no contar con que para algo tan importante como la persistencia de un modelo de datos.