IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

A quel moment utilise-t-on le ContentProvider


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : août 2007
    Messages : 142
    Points : 52
    Points
    52
    Par défaut A quel moment utilise-t-on le ContentProvider
    Bonsoir,
    Je ne comprend pas très bien le concept des content provider, je cherche à lire les données de ma base de donnée de façon asynchrone. Pour y parvenir j'ai trouvé deux classes CursorLoader et AsyncTaskLoader.

    J'ai réussi à mettre en place AsyncTaskLoader il me retourne bien mes données de la base de donnée, en revanche je ne comprend pas très bien à quel moment faut utiliser le ContentProvider ?

    Question 1: Est ce que le ContentProvider permet de faire des insertions dans la base de donnée ?

    Question 2: Est ce qu'il permet de mettre à jour automatiquement la base de donnée si il y a un changement de donnée.

    Merci

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Le "ContentProvider" sert d'interface entre une base de données proposée par une application A
    Et un utilisateur de cette base de données (une application B par exemple), par l'intermédiaire d'un "ContentResolver".
    Comme écrit dans la doc Android, si les données ne sont pas partagées entre plusieurs application, l'utilisation d'un ContentProvider est inutile.

    Les divers ContentProvider permettent de créer/supprimer/modifier des données sans problème. Il est même possible d'assigner des autorisations à ces providers. Ainsi pour installer l'application B, il faudra qu'elle indique à l'utilisateur qu'elle va accéder au contenu de A.

    Exemples de content-providers fournis "de base":
    Contacts
    Media (photos) mais plus génériquement: Documents
    Calendar
    ...
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : août 2007
    Messages : 142
    Points : 52
    Points
    52
    Par défaut
    Merci d'avoir répondu de façon clair.

    Peux t-on utiliser un CursorLoader sans forcément utiliser un ContentProvider ?
    Est ce que le CursorLoader accomplit la même tâche que AsyncTaskLoader ?

    Merci

  4. #4
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    décembre 2004
    Messages
    2 492
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2004
    Messages : 2 492
    Points : 4 063
    Points
    4 063
    Par défaut
    Comme dit ci-avant, les ContentProvider n'ont rien à voir dans l'histoire. Enfin tout dépens si tu est simple utilisateur d'un ContentProvider d'une autre application B, ou bien créateur du ContentProvider de ta propre application A. Ce n'est pas clair dans ta question.

    Ensuite, les AsyncTaskLoader servent à charger des trucs de façons asynchrone, pas forcément des données en base. Le CursorLoader est quant à lui dédié à cette tâche.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : août 2007
    Messages : 142
    Points : 52
    Points
    52
    Par défaut
    Très bien dans ce cas peut on utiliser les CursorLoader sans ContentProvider, j'ai vu plein d'exemple ou on est obligé de passer par un contentprovider pour utiliser le CursorLoader.

  6. #6
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    décembre 2004
    Messages
    2 492
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2004
    Messages : 2 492
    Points : 4 063
    Points
    4 063
    Par défaut
    Milles excuses. Effectivement, il semble que le cursorLoader soit prévu pour fonctionner de concert avec un ContentProvider.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. A quel moment utiliser des px et % ?
    Par mario94 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 17/07/2013, 04h54
  2. A quel moment la swap est elle utilisée ?
    Par droussa dans le forum Administration système
    Réponses: 13
    Dernier message: 27/06/2007, 21h23
  3. [Compilation] A quel moment pour une application ?
    Par Rick1602 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 04/03/2004, 21h36
  4. Réponses: 3
    Dernier message: 27/08/2003, 22h14
  5. Réponses: 2
    Dernier message: 11/07/2002, 09h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo