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 :

Provider renvoyer un autre type different de Cursor


Sujet :

Android

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut Provider renvoyer un autre type different de Cursor
    Bonjour à tous,

    je suis occupé de créer un provider.
    Celui-ci permet d'envoyer et de récupérer des informations en webService. Donc rien n'est stocké en bdd.

    Mon problème est donc que je ne récupère pas de Cursor, est ce qu'il est possible de crée une méthode query qui renvoie autre chose qu'un Cursor ?

    Si ce n'est pas possible comment insérer mes données dans un Cursor ? Car dans l'api il n'existe aucune méthode set.

    D'avance merci pour votre aide,

    Bonne journée

    Guillaume

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

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    A priori tu ne peux rien y faire, puisque cela est définit au niveau de l'Interface ContentProvider : la méthode query() renvoie nécessairement un Cursor.

    Par contre, ton type de données à toi peut implémenter l'interface Cursor, comme c'est le cas pour les curseurs SQLite par exemple. Ainsi tu pourras renvoyer des données de ton choix, navigables selon les principes d'un curseur.
    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

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut
    Merci de ta réponse.

    J'en déduit qu'il n'est pas non plus possible d’implémenté une nouvelle méthode qui serait accessible en l'appelant sur mon ContentResolver ?

    Quand tu dis "implémenter l'interface Cursor", tu parles d'un adapter ou carrément une implémentation de la classe Cursor ? As-tu des exemples ?

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

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Citation Envoyé par Guispeed4262 Voir le message
    Merci de ta réponse.
    J'en déduit qu'il n'est pas non plus possible d’implémenté une nouvelle méthode qui serait accessible en l'appelant sur mon ContentResolver ?
    Non. Impossible. Sauf à bidouiller avec des cast.
    Citation Envoyé par Guispeed4262 Voir le message
    Quand tu dis "implémenter l'interface Cursor", tu parles d'un adapter ou carrément une implémentation de la classe Cursor ? As-tu des exemples ?
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    //on suppose ta classe Voiture existante. Pour la "cursorifier" :
    class VoitureCursor extends Voiture implements Cursor {
     
       public VoitureCursor(String marque, float kilo, Date realease) {
           super(marque, kilo, realease);
       }
     
       int getCount() { return 1; }  //tu sais qu'il n'y aura qu'une seule ligne
       int getColumnCount() { return 3; } //tu sais qu'il y a trois champs/colonnes
       String[] getColumnNames() { return new String[]{"marque","kilometrage","mise_en_circulation"}; }
       float getFloat(int column) { if (column==1) { return this.kilo; } else { return -1.0;} }
       ...
    }
    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
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut
    Merci beaucoup, je vois comment implémenter ma classe.

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

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    ok. Penses à marquer ce sujet comme "résolu".
    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

  7. #7
    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
    (et un point à hephaistos pour l'excellente réponse)
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/04/2019, 18h52
  2. BULK COLLECT ==> TYPE TABLE OF (Cursor Rowtype)
    Par argoet dans le forum Oracle
    Réponses: 5
    Dernier message: 17/05/2005, 16h47
  3. [CSS] Le type hand pour cursor dans une balise AREA
    Par Invité dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 13/04/2005, 13h33
  4. champ_autoincrémenté de type different d'un entier
    Par kouraichi35 dans le forum Bases de données
    Réponses: 5
    Dernier message: 20/10/2004, 19h51
  5. [LG]Problême Variable dynamique de types différents
    Par pierrOPSG dans le forum Langage
    Réponses: 2
    Dernier message: 29/04/2004, 16h01

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