Almacenamiento de datos en Android: almacenamiento de archivos vs base de datos SQLite vs preferencias compartidas

Este título me hace preguntarme cuál es la característica más adecuada para guardar datos de mediano a grande en una aplicación específica. Sé que hay unas preguntas recientes que he visto en Stackoverflow con respecto a los datos de ahorro con esta característica, pero quiero saber, como lo que he dicho, lo que más le convenía. ¿Tiene alguna sugerencia con respecto a esto?

Preferencias compartidas es mejor para cosas como ajustes o pequeñas cantidades de datos. Los datos almacenados en las Preferencias Compartidas se almacenan en pares clave-valor. Esto hace que la recuperación de los datos sea más simple, pero no existe una forma realmente eficiente de consultar / buscar una pieza específica de datos.

La base de datos es una implementación de SQLite. Esto es útil cuando hay una gran cantidad de registros para almacenar que todos tienen los mismos campos / similares. Dado que es SQLite, puede escribir consultas para obtener registros específicos de las tablas.

No tengo tanta experiencia guardando en el sistema de archivos para el almacenamiento, así que alguien más tendrá que hablar con ese.

Aquí hay un enlace a otra discusión de stackoverflow que compara SQLite y Preferencias compartidas. Pros y contras de SQLite y las preferencias compartidas , así como a la documentación de Android que entra en más detalles sobre cómo funciona cada método. http://developer.android.com/guide/topics/data/data-storage.html

Preferencias compartidas

Almacene datos primitivos privados en pares clave-valor.

Almacenamiento interno

Almacenar datos privados en la memoria del dispositivo.

Almacenamiento externo

Almacene los datos públicos en el almacenamiento externo compartido.

Bases de datos SQLite

Almacenar datos estructurados en una base de datos privada.

Conexión de red

Almacene datos en la web con su propio servidor de red.

Según el sitio web oficial

  • Cómo eliminar las viejas filas de la base de datos sqlite en android?
  • Android Sqlite IN, sin sintaxis
  • Cómo comparar representaciones de cadena de dobles si termina en .00
  • ¿Cómo veo la base de datos SQLite en un dispositivo Android?
  • Android classificar los resultados de la consulta sqlite ignorando el caso
  • Android: utiliza UUID como clave principal en SQLite
  • SQLite onUpgrade ()
  • ¿Cómo puede acceder a los contenidos de las bases de datos de Android Emulator?
  • Datos de SQLite a un RecyclerView
  • NotifyChange con uri modificado de contentProvider.update ()
  • Base de datos no visible en la carpeta DDMS cuando se utiliza el dispositivo real en lugar del emulador
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.