Meilleur moyen de stocker des données dans Android

Je souhaite stocker les données sous forme de structure, c’est-à-dire toutes les informations relatives à de nombreux appels (comme les journaux d’appels). Que devrais-je préférer? et je ne veux pas partager mes données avec une autre application.

  1. SQLiteDatabase
  2. Fournisseur de contenu
  3. SharedPreference
  4. ou stockage de fichiers
  5. ou de toute façon pour mon besoin que je ne sais pas.

SharedPreferences est apparemment implémenté en interne sous forme de fichier XML sérialisé et désérialisé intégralement lors de la mise à jour. Et c’est un magasin Key-Value sans index. Utilisez-le uniquement pour les données simples associées à votre application. Pas plus de 50 clés et vous l’avez probablement exagéré.

ContentProvider est conçu pour le partage de données entre applications. Vous avez explicitement dit que vous ne voulez pas faire cela.

SQLiteDatabase est destiné aux applications individuelles pour stocker des données et offre une grande flexibilité pour stocker et indexer les données de différentes manières. Personnellement, je l’utilise pour stocker des journaux dans l’une de mes applications. Je recommanderais cette voie.

Une autre option consiste à se connecter à des fichiers texte ordinaires stockés dans le stockage de fichiers.

J’ai récemment découvert db4o [http://www.db4o.com/android/]. Ce n’est pas le meilleur choix pour stocker des journaux, mais si vous souhaitez stocker les données dans votre object, c’est certainement une excellente alternative à SQLite.

Vous pouvez également conserver les données dans le fichier XML créé par votre application. Et dans de nombreuses applications, je l’ai fait. Et en utilisant n’importe quel parsingur SAX ou DOM, vous pouvez récupérer les données en douceur. Aucune autre application ne peut accéder à ce XML.

J’espère que cela t’aides