Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Découvrir le développement d'applications avec Android 5

Installer et configurer Retrofit et GSON

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Retrofit et GSON sont deux librairies open source. Elles permettent de rendre transparente la gestion de la communication avec un service web.
07:08

Transcription

Voyons maintenant une nouvelle librairie permettant de télécharger sur Internet, des données. Cette librairie s'appelle Retrofit, elle est éditée par Square, elle est livrée en open source sur Internet, vous pouvez la télécharger. C'est très très simple de l'intégrer à Androïd Studio, c'est pas comme Volley, c'est beaucoup plus simple, vous allez voir. Il suffit de l'ajouter dans le fichier Gradle, et automatiquement, ce sera Androïd Studio, qui va la télécharger, créer le JAR, il va tout faire pour vous, vous ne vous en rendrez pas compte, mais vous allez juste ajouter le nom de la librairie et la version que vous souhaitez avoir. Une fois que c'est fait, le principe de cette librairie est de communiquer avec un webservice en rest. c'est à dire que si vous avez un webservice qui respecte les normes rest, vous allez pouvoir vraiment très très facilement, lister les différentes URL de votre webservice, et pour chacune des URL, préciser les paramètres que vous vous passez, et quels objets vous récupérez. Ce qu'il y a de bien avec Retrofit, c'est qu'il fonctionne avec une autre librairie open source, il peut fonctionner avec plusieurs, mais celle avec laquelle on va l'utiliser, nous s'appelle Gson, c'est édité par Google, aussi, qui va permettre de faire du mapping entre du Gson et un objet Java standard. Automatiquement, en se basant sur les noms des propriétés et les noms des variables que vous aurez mis dans votre objet. On va voir ça ensemble, très rapidement. On va retourner dans Androïd Studio. Alors, vous ouvrez Gradle script, vous prenez le build.gradle qui est dans le sous-dossier app. pas celui qui est dans le projet général, mais celui qui est dans le sous-dossier app. Tout en bas de ce fichier, vous avez des dépendances donc... pour l'instant on a uniquement appcompat et design, on va ajouter une dépendance de plus. compile... Et là, on va mettre la référence de ce projet-là. Vous pouvez la trouver directement sur Retrofit, sur le site du Retrofit, vous avez le lien dans download, je pense. Voilà, elle est ici. On va prendre tout ça... et le coller... ... ici... On arrête, on va juste cliquer sur Gradle, Quand vous allez cliquer là-dessus automatiquement, il va télécharger cette version que vous lui avez précisé de Retrofit, et l'intégrer à votre projet. À partir de là, il est utilisable. On va ajouter une deuxième ligne, permettant d'utiliser Gson avec Retrofit, Puisqu'à partir de la version 2 de Retrofit, il n'est plus intégré de série, donc je vais prendre cette ligne, la dédoubler... et juste changer... ça... dans le package de Retrofit, je vais prendre en plus de converter Gson. converter, tiret, Gson. Voilà, c'est le même numéro de version, et on va synchroniser aussi. Voilà, c'est tout ce qu'on a à faire pour ajouter à la fois Retrofit et la conversion automatique vers Gson. Maintenant, on va voir les données qu'on va télécharger sur notre web service Voici... Vous vous rappelez, on avait vu au tout début du cours, quand je vous ai présenté les outils facultatifs, j'utiliserai donc Gson server pour faire une fausse base de données de contacts, avec des groupes, donc, j'ai trois groupes dans ma base de données chaque groupe aura un ID, un titre et une image. Et chaque contact aura un ID, firstname, lastname, email, picture et group. On va se préoccuper pour l'instant uniquement des groupes. Alors je vais le mettre ici pour qu'on l'ait sous les yeux. On va aller dans Java... data... Et je vais créer ici une nouvelle classe, que je vais appeler Group avec le « G » majuscule...hop ! ce sera pareil, en fait le même nom qu'ici pour un seul groupe, avec juste la majuscule. Et là-dedans, je vais ajouter les différentes variables qui sont présentes dans chacun des groupes. int, donc on a l'ID, ensuite on va avoir deux chaines de caractères on a le titre et l'image. Je vais juste me mettre là pour bien le voir. title... virgule... image... Voilà ce qu'il y aura dans mes objets de type groupe. Ça c'est pour avoir un objet qui sera prêt ce qu'on va faire maintenant, on va créer ce qu'on appelle une interface c'est comme ça que Retrofit fonctionne, je crée une nouvelle classe, mais en fait c'est une interface que je vais vouloir, et je vais l'appeler Address... Book...Api Ce sera ce fichier qui sera utilisé par Retrofit pour décrire l'API qu'on va utiliser. Je vais lui préciser quand je veux récupérer ma liste de groupe, je vais faire un GET et je vais faire slash... groups... Ça, ça correspondra à une méthode, qui doit retourner... un type call une liste, et chaque élément... ce sera... un objet group, comme j'ai créé tout à l'heure. Je vais l'appeler, moi, getGroupList. Pas besoin de paramètre. C'est tout ce que j'ai à faire. En faisant ça, automatiquement, Retrofit va se rendre compte quand je vais appeler cette méthode getGroupList qu'il doit récupérer une liste, ça va être justement plusieurs éléments séparés par des crochets en Json, et que pour chaque élément, il va créer un objet group, en transférant automatiquement les valeurs qui sont ici, associées aux noms des variables qui sont exactement les mêmes que les noms des champs qui sont ici. C'est pour ça que c'est important de bien préparer ces données d'un côté et de l'autre pour avoir quelque chose qui fonctionne de façon automatique. Le call qui est ici indique que cet appel est asynchrone, c'est le même principe que ce qu'on a vu sur Volley juste avant. Tout à l'heure avec Volley, on créait une requête et ensuite on envoyait la requête à Volley pour qu'il s'en occupe. En fait, quand vous appelez getGroupList ça vous prépare la requête toute prête, il faudra la programmer pour qu'elle s'exécute, mais ça reste le même principe. Si on veut aussi récupérer uniquement un groupe, il suffirait de faire quelque chose comme ça, l'URL pour le récupérer, ça va être groups slash... le numéro du groupe, donc pour définir un paramètre variable, il suffit de le mettre entre accolades, et ensuite, on aura pareil ça va être asynchrone, cette fois-ci au lieu de récupérer une liste de groupes, j'en aurai qu'un seul, et là, je vais getGroup... et je vais pouvoir lui préciser la valeur de ce groupe, @... path... pour le paramètre Group qui est dans l'URL je vais lui passer un numéro de groupe, groupID, par exemple. Voilà, c'est tout ce qu'il y a à faire pour déclarer l'API et préparer l'ensemble. Dans la vidéo suivante, nous verrons comment utiliser ces appels pour créer de véritables objets utilisables en Java.

Découvrir le développement d'applications avec Android 5

Développez des applications mobiles pour Android. Créez un projet de A à Z sous Android Studio, de l’installation du kit de développement, jusqu’à sa publication sur le Play Store.

3h17 (39 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Android Android 5
Spécial abonnés
Date de parution :17 mars 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !