Android: l'accès de base de données SQLite via le Fournisseur de Contenu ou de mettre en œuvre DAO?
Je me demandais quelle est la meilleure approche pour accéder à ma base de données d'application: utilisation d'un Fournisseur de Contenu, ou de mettre en œuvre mon DAO par la main?
À partir de mes recherches plus récentes, semble que Fournisseur de Contenu, même pour application à un usage interne, est préférable, mais je ne sais pas exactement quels sont les inconvénients de chaque approche.
Pouvez-vous donner quelques informations à ce sujet?
OriginalL'auteur user1135437 | 2012-11-24
Vous devez vous connecter pour publier un commentaire.
Je préfère utiliser ContentProvider si vous avez des préoccupations de la fermeture ou de verrouillage de la db.
Vérifier Simple Fournisseur de Contenu pour la db opérations
OriginalL'auteur Labeeb Panampullan
De Google Docs.
Mais alors je suis un peu confus lors de la lecture de ce et certains autres postes. Est-il judicieux d'utiliser un fournisseur de contenu de l'événement s'il est destiné à être utilisé uniquement par votre propre application?
OriginalL'auteur MRodrigues
De la ContentProvider documentation:
Les fournisseurs de contenu sont l'un des principaux blocs de construction des applications Android, de fournir du contenu pour les applications. Ils encapsuler les données et de les fournir à des applications grâce à l'unique ContentResolver interface. Un fournisseur de contenu n'est nécessaire que si vous avez besoin de partager des données entre plusieurs applications. Par exemple, les contacts de données est utilisé par plusieurs applications et doit être stocké dans un fournisseur de contenu. Si vous n'avez pas besoin de partager des données entre plusieurs applications, vous pouvez utiliser une base de données directement via SQLiteDatabase.
Me semble que, si vous n'allez pas à partager des données avec d'autres applications, vous n'avez pas besoin d'un fournisseur de contenu.
Lien: http://developer.android.com/reference/android/content/ContentProvider.html
ContentProvider
(événement interne) est la meilleure source de données pourCursorLoader
)Gardez à l'esprit que jusqu'à Android 4.2 fournisseur de contenu sont, par défaut, à la disposition d'autres applications Android. Seulement depuis la 4.3 valeur par défaut est exporté:faux
OriginalL'auteur Lu Araujo