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.

30
demandé sur BC2 2013-09-18 18:21:22

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,.....)

43
répondu user1700184 2016-09-14 08:18:25

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.

enter image description here

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

21
répondu Siva Prakash 2017-01-11 16:28:24

Vous pouvez facilement comprendre de cette façon,

Fournisseurs De Contenu sont utilisés pour expose data.

d'un autre côté

Le Contenu De Résolution sont les corresponding class utilisé pour query et effectuer Transactions sur les Content Providers.

Le Contenu De Résolution comprend