Quelle est la différence entre contentprovider et contentResolver dans android
Quelle est la différence entre ContentProviders et ContentResolver? Je ne veux pas pour l' SQLite
base de données. Je développe une application pour media.
5 réponses
j'ai trouvé quelques explications ici. En résumé
Le Contenu De Résolution résout une URI à un fournisseur de Contenu.
Fournisseur De Contenu fournit une interface pour interroger le contenu.
La façon d'interroger un fournisseur de contenu est contentResolverInstance.query(URI,.....)
ContentProviders
sont utilisés l'abstraction de la base de données à partir d'autres parties et agit comme interface entre votre base de données et les classes UI/autres. Vous devez créer votre propre ContentProvider pour partager vos données d'application avec d'autres applications.
ContentResolver
est utilisé pour sélectionner le bon ContentProvider basé sur le ContentUris
. Un ContentUri peut ressembler à
content: / / com.Android.contacts / contacts / 3
- contenu:// s'appelle programme et indique qu'il s'agit d'un ContentUri.
- com.Android.contacts s'appelle Autorité de contenu et ContentResolver l'utilise pour résoudre à un fournisseur unique (dans ce cas, ContactProvider).
- contacts est le chemin qui identifient un sous-ensemble du les données du fournisseur (par exemple, le nom de la Table).
- 3 est le id utilisé pour identifier de façon unique une rangée dans le sous-ensemble de données.
NOTE: Votre propre application peut également utiliser cette route pour gérer ses données.
Voir fournisseurs de contenu sur Android pour plus de détails