2011-02-22 4 views
0

Jusqu'ici, tous les didacticiels de fournisseur de contenu que j'ai trouvés, enseignent comment implémenter un fournisseur de contenu localement, sur l'appareil Android. L'URI de ces fournisseurs de contenu commence toujours par contenu: // comme dans:Fournisseur de contenu Android * non * dans Android?

content://com.google.provider.NotePad/notes/23 

Ma question: est-il possible de mettre en œuvre un fournisseur de contenu qui est pas sur l'appareil Android?

C'est-à-dire un fournisseur de contenu qui suit toutes les conventions et la commodité des fournisseurs de contenu Android mais est plutôt situé sur un site distant, utilisant MySQL par exemple, au lieu de SQLite3?

Si oui, comment puis-je implémenter un tel fournisseur de contenu? Où puis-je trouver des informations qui enseignent comment faire cela? L'URI de ce fournisseur de contenu commence-t-il par 'content: //'?

Répondre

2

Je ne pense pas qu'il soit possible de créer un fournisseur de contenu qui ne soit pas sur l'appareil Android. Un fournisseur de contenu fait partie du framework Android et sa résolution (c'est-à-dire à quoi correspond le nom) fait également partie du framework. Réalisez qu'un URI qu'utilise Android pour le nom d'un service n'est pas la même chose qu'une URL sur l'Internet public. Si vous souhaitez vous connecter à certaines données côté serveur sur l'Internet public, il est préférable de l'intégrer dans un service Web qui renvoie JSON ou XML pour éviter les problèmes de connexion à la base de données.

+0

Je n'aime pas le fait qu'il n'est pas possible de créer un fournisseur de contenu qui ne soit pas sur l'appareil Android. Mais je suppose que je dois l'accepter (à moins qu'une réponse contraire ne se présente). Merci et +1. :) –

2

C'est en effet possible et je ne pense pas que vous trouverez un meilleur exemple que RESTProvider.

Ceci expose une interface contentprovider aux services API REST et peut être utilisé avec n'importe quel service distant qui renvoie XML ou JSON.

Questions connexes