Aller au contenu principal

HTTP 3 - liste d'objets

astuce

ATTENTION : L'outil principal de débogage pour les appels réseaux est le network inspector dans Android Studio.

  1. Cliquer sur Fichier / File ou le symbole ☰ en haut à gauche
  2. Choisir View / Tool Windows / AppInspection
  3. Dans la fenêtre AppInspection, choisir l'onglet Network Inspector
  4. Tu devrais voir apparaître les appels réseaux de ton application

Regarder la recette de base pour les étapes:

Dans cette recette, nous allons voir comment :

  • Récupérer une liste d'objets complexes depuis un service web.
  • TODO

Le code de cette recette est disponible ici.

Dans le package api, nous allons créer des classes pour facilement accéder aux données.

Si on récupères du JSON, on va avoir les correspondances suivantes:

  • si le JSON commence avec { on veut récupérer un objet et on aura besoin d'une classe. On aura un Call<Pipo> et il faudra définir une classe Pipo
  • si le JSON commence avec [ on veut récupérer une liste et on pourra directement utiliser List. On aura alors un Call<List<Xxxxx>>.
  • si le JSON commence par " on va avoir un Call<String>
  • si le JSON commence par une suite de chiffes on va avoir un Call<Long>
  • etc.

Exemple

https://api.github.com/users/octocat/repos

  • on voit que le JSON classe avec [ donc on veut récupérer une liste d'objets.
  • on va donc récupérer une liste de Repo et on crée la classe Repo.
  • pour voir quels champs mettre dedans, on regarde le premier élément de la liste avec le premier {
  • pour la demo, on a ajouté le name et le id
Chargement...