Android : Comment implémenter la librairie Google Volley avec code sources - Letecode

Android : Comment implémenter la librairie Google Volley avec code sources

Google Volley est une librairie qui permet d'effectuer des requettes simples vers un api.

Jean Claude Mbiya
Jean Claude Mise à jour : 23 mars 2023 1500

Google Volley est l'une des meilleures bibliothèques utilisées pour établir des connexions HTTP. Il rend la mise en réseau facile, rapide et sécurisée. Volley est une bibliothèque construite et maintenue par Google et est donc bien connue et largement utilisée. Pour les débutants, Volley est un très bon choix car il est beaucoup plus facile que n'importe quelle autre bibliothèque. Cet article vous aidera à implémenter facilement Google Volley Android dans votre projet.

Avantages de l'utilisation de Volley :

  • Planification automatique des requêtes réseau.
  • Plusieurs connexions réseau simultanées.
  • Mise en cache transparente des réponses disque et mémoire avec cohérence de cache HTTP standard.
  • Prise en charge de la priorisation des requêtes.
  • API d'annulation de requête. Vous pouvez annuler une seule requête, ou vous pouvez définir des blocs ou des étendues de requêtes à annuler.
  • Facilité de personnalisation, par exemple, pour une nouvelle tentative et une interruption.
  • Un ordre fort qui facilite le remplissage correct de votre interface utilisateur avec des données récupérées de manière asynchrone à partir du réseau.
  • Outils de débogage et de traçage.

Vous débutez en développemnt android ? suivez cet article pour savoir comment installer et commprendre l'outil de développement android : Android studio.

Si vous souhaitez en savoir plus sur Volley consultez la documentation officielle de Volley par Google. 

Voyons maintenant comment implémenter Volley dans votre projet.

Implementation de Google Volley Android

1. Ajout de la dépendance Gradle pour la bibliothèque Android google volley dans votre projet

Accédez à Gradle Scripts > puis Gradle (Module:app). Après cela, il vous suffit de copier la ligne commençant par « implementation » dans la section des dependencies et de cliquer sur synchroniser maintenant (sync now).

dependencies {

    implementation 'com.android.volley:volley:1.2.1'

}

Après la synchronisation complète, Google Volley sera ajouté avec succès à votre projet Android. Vous avez besoin d'une autorisation Internet pour utiliser Volley, alors accédez au manifeste et ajoutez une autorisation pour Internet.

Ajoutez cette ligne avant la balise <application> de votre fichier manifest.

<uses-permission android:name="android.permission.INTERNET" />

Voyons maintenant comment nous pouvons implémenter google volley android avec quelques exemples ou voyons comment faire une requête simple à l'aide de Volley.

2. Faire une simple demande de lecture de données.

Cette implémentation est destinée à la lecture de données, dans l'exemple ci-dessous, l'url "https://votre-api.com/read.php" affichera un message "Success" et celui-ci est récupéré et affiché sous forme de message toast.

val queue: RequestQueue = Volley.newRequestQueue(this)

val url = "https://votre-api.com/read.php"

val stringRequest = StringRequest(Request.Method.GET, url,

    object : Listener<String?>() {

        fun onResponse(response: String) {

            Toast.makeText(applicationContext, "Response: $response", Toast.LENGTH_SHORT)

                .show()

        }

    }, object : ErrorListener() {

        fun onErrorResponse(error: VolleyError?) {

            textView.setText("Une erreur est survenue !")

        }

    })

queue.add(stringRequest)

 

C'est aussi simple de créer une requête de lecture dans Volley. Vérifions maintenant la requête dans laquelle nous passons des valeurs avec la requête, c'est-à-dire l'implémentation des méthodes GET et POST.

3. Création d'une requête GET

Pour démontrer cela, j'ai créé une API PHP qui reçoit à la fois GET et POST, et si certaines données sont transmises, un message "Success" s'affichera, sinon "Erreur".

<?php

    if(isset($_REQUEST['param'])){

        echo "Success";

    }

    else{

        echo "Erreur";

    }

?>

 

Voici à quoi ressemble l'API PHP. Maintenant, pour faire une requête GET, vous devez transmettre les données dans l'URL. Vous pouvez voir qu'après l'URL, j'ai ajouté les données à transmettre comme " ?param=value ". Vous pouvez passer plus de paramètres comme " ?param1=value&?param2=value ".

les données peuvent provenir d'un formulaire rempli par l'utilisateur ou par un moyen quelconque dans votre application.

val queue: RequestQueue = Volley.newRequestQueue(this)

val url = "https://votre-api.com/read.php?param=value"

val stringRequest = StringRequest(Request.Method.GET, url,

    object : Listener<String?>() {

        fun onResponse(response: String) {

            Toast.makeText(applicationContext, "Response: $response", Toast.LENGTH_SHORT)

              .show()
        }

    }, object : ErrorListener() {

      fun onErrorResponse(error: VolleyError?) {
          textView.setText("Une erreur est survenue !")
        }

    })

queue.add(stringRequest)

 

Faire une requête GET est facile avec Google Volley Android. Voyons maintenant comment faire la requête POST.

4. Création d'une requête POST

Pour créer une requête POST, vous devez envoyer les paramètres comme la méthode ci-dessous. Ici, dans getParams(), vous pouvez passer autant d'arguments que vous le souhaitez. J'ai créé un Map() qui contient deux Strings. Pour ajouter plus d'arguments, utilisez simplement put(). Comme paramMap.put("param1", "données"); paramMap.put("param2", "données"); et ainnsi de suite.

val queue: RequestQueue = Volley.newRequestQueue(this)

val url = "https://votre-api.com/write.php"

val stringRequest: StringRequest = object : StringRequest(Request.Method.POST, url,

    object : Listener<String?>() {

        fun onResponse(response: String) {

            textView.setText("Response : $response")

        }

    }, object : ErrorListener() {

        fun onErrorResponse(error: VolleyError?) {

            textView.setText("Une erreur est survenue !")

        }

    }) {

    protected val params: Map<String?, String?>

        get() {

            val paramMap: Map<String?, String> = HashMap()

            paramMap.put("param", "abc")

            return paramMap

        }

}

queue.add(stringRequest)

 

J'espère que vous comprenez comment faire une requête POST, si vous avez des questions à ce sujet, n'hésitez pas à laisser un commentaire ou à poser une question dans le forum.

vote
Jean Claude Mbiya
Jean Claude Mbiya

Développeur Web full stack, Développeur Android (Certifié Google AAD) Formateur dans les domaines du numérique, Créateur letecode.com 👨‍💻. Je suis un grand passionné des nouvelles technologies et j'adore partager ce que j'apprend.

0 commentaire(s)

Laissez votre commentaire à @johnmbiya

ou pour laisser un commentaire