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 :

Problème récupération JSON


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 78
    Points : 46
    Points
    46
    Par défaut Problème récupération JSON
    Bonjour,

    Je débute en android et j'ai voulu pour tester me faire une application qui récupère des données via un objet json depuis une URL.

    J'ai utilisé la classe AsyncTask de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public class BackGroundTask extends AsyncTask<String, Integer, String> {
     
        String data = null;
        @Override
        protected String doInBackground(String... url) {
            try{
                data = downloadUrl(url[0]);
            }catch(Exception e){
                Log.d("Background Task", e.toString());
            }
            return data;
        }
     
        /** Méthode pour télécher des données json depuis une url */
        public String downloadUrl(String strUrl) throws IOException{...}
    }
    et dans mon MainActicity.java j'ai appelé ma class BacGroundTask pour récupérer mes données json :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public class MainActivity extends Activity {
     
        String url = "http://uneUrl";
        AsyncTask<String, Integer, String> wallpapersTask;
        String wallpaperItems = null;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            BackGroundTask task = new BackGroundTask();
            wallpapersTask = task.execute(url);
     
            //...etc
    }
    Le problème est que je n'arrive pas à utiliser l'objet wallpapersTask. Il a un type AsyncTask que je n'arrive pas à exploiter. Par exemple j'ai voulu faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String result = wallpapersTask.ToString();
    Mais ça ne marche pas comme ça. Par contre dans la variable data retournée par la méthode doInBackground, quand je met un point d'arrêt dessus je vois bien mon tableau de données JSON qui est bien récupéré.

    Je me suis renseigné et je pense qu'il me manque des méthodes (peut être ?) à implémenter dans la classe BackGroundTask... Mais je n'ai pas bien compris.

    Est ce que quelqu'un pourrait m'éclairer sur le sujet, dans le but de récupérer dans un objet JSON ou un String mes données ?

    Merci d'avance pour votre aide.

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 78
    Points : 46
    Points
    46
    Par défaut
    Problème résolu en implémentant la méthode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    @Override
    public void onPostExecute(String data){
        //do something
    }
    qui récupére les données de doItBackground.

Discussions similaires

  1. [RegEx] problème récupération texte
    Par Kerod dans le forum Langage
    Réponses: 2
    Dernier message: 25/01/2006, 16h10
  2. Problème récupération formulaire
    Par kalimer0 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 23/12/2005, 14h47
  3. [MySQL] Problème récupération de données avec un SELECT DISTINCT
    Par 12_darte_12 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/07/2005, 14h48
  4. problème récupération valeur d'un "div"
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 29/06/2005, 10h04
  5. [Débutant] Problème récupération de données
    Par flogreg dans le forum Servlets/JSP
    Réponses: 26
    Dernier message: 20/08/2004, 17h29

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