Almacenamiento local
Conservar los datos tras cerrar la aplicación
Base de datos local
Todo lo que hemos construido hasta ahora desaparece al cerrar la aplicación. El carrito de la lección 7 vive en un ChangeNotifier, es decir, en memoria RAM: el sistema operativo recupera esa memoria en cuanto la necesita, y el usuario se encuentra con un carrito vacío sin entender por qué. En móvil, esto no es una hipótesis: Android e iOS matan aplicaciones en segundo plano constantemente.
Persistir en local responde a dos necesidades que conviene distinguir, porque no requieren las mismas herramientas. La primera es la preferencia: un booleano para el modo oscuro, un idioma, un token de sesión. Unas pocas decenas de valores aislados, que se leen al arrancar y se escriben rara vez. La segunda es el dato de negocio: cientos de filas que se quieren filtrar, ordenar, unir, contar. Guardar preferencias en una base de datos SQL es una complicación innecesaria; guardar un catálogo de mil artículos en un archivo de preferencias es un error que se paga con lentitud en el arranque.
Esta lección trata las dos herramientas de referencia —shared_preferences y sqflite— con un criterio de elección explícito, y después las dos dificultades reales de SQLite en móvil: la migración de esquema cuando la aplicación ya está instalada, y las transacciones.
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión