2011-04-11 24 views
7

Quiero almacenar datos en forma de estructura, es decir, toda la información sobre muchas llamadas (como registros de llamadas). ¿Qué debería preferir? y no quiero compartir mis datos con otra aplicación.La mejor manera de almacenar datos en android

  1. SQLiteDatabase
  2. ContentProvider
  3. SharedPreference
  4. o Archivo de almacenamiento
  5. o cualquier manera de que mi requisito que no sé.

Respuesta

0

También puede mantener los datos dentro del archivo XML creado por su aplicación. En muchas aplicaciones lo he hecho. Y usando cualquier analizador SAX o DOM puedes recuperar datos sin problemas. Ninguna otra aplicación puede acceder a ese XML.

Esperanza esto ayuda

17

SharedPreferences es aparentemente implementado internamente como un archivo XML que es serializado y deserializado en su totalidad en la actualización. Y es una tienda de Key-Value sin índice. Así que utilízalo solo para datos simples asociados con tu aplicación. Más de 50 claves y probablemente ya has exagerado.

ContentProvider está diseñado para compartir datos entre aplicaciones. Has dicho explícitamente que no quieres hacer eso.

SQLiteDatabase está destinado a aplicaciones individuales para almacenar datos, y proporciona una gran flexibilidad para almacenar e indexar datos de diferentes maneras. Personalmente lo uso para almacenar registros en una de mis aplicaciones. Yo recomendaría esa ruta.

Otra opción es iniciar sesión en archivos de texto comunes almacenados en el almacenamiento de archivos.

+1

+1 me ayudó también – Joset

1

Recientemente descubrí db4o [http://www.db4o.com/android/]. No es la mejor opción para almacenar registros, pero si desea almacenar los datos en su objeto, esta es sin duda una excelente alternativa a SQLite.

Cuestiones relacionadas