How to fetch data from Firebase in Android?

Comment récupérer des données de Firebase sur Android ?


Objectifs du blog

Comment récupérer des données de Firebase sur Android ?

Après avoir lu ce blog, nous pourrons récupérer les données de Firebase Realtime Database. Ces données peuvent inclure des types de données simples, tels que des chaînes, ou des types de données complexes tels que des objets Java.

Conditions préalables

Nous devons disposer d’un projet Android Studio et d’un projet Firebase pour pouvoir utiliser la base de données en temps réel Firebase. Créez un nouveau projet Android Studio (ou utilisez n’importe quel projet existant). Ce projet Android Studio sera utilisé pour travailler avec la base de données en temps réel. Suivez les étapes ci-dessous pour créer le projet Firebase –

1. Cliquez sur https://console.firebase.google.com

2. Cliquez sur “Ajouter un projet” bouton.

3. Entrez le nom du projet et acceptez les conditions et cliquez sur “Continuer” bouton.

 

Ajouter un projet

4. Ajoutez ensuite l’application Android à votre projet. Il faut entrer le nom du package de l’application. Cliquez sur Suivant.

5. Téléchargez le fichier google-services.json et déplacez ce fichier vers l’emplacement du projet Android dans Android Studio, comme spécifié à l’écran.

6. À l’étape suivante, il y aurait un petit tutoriel pour ajouter 3 lignes de code dans les fichiers build.gradle au niveau du projet et au niveau de l’application. Ajoutez-les en conséquence.

7. Terminez ensuite ce processus d’ajout de l’application Android au projet.

8. Cliquez ensuite sur l’option “Base de données” dans le menu de gauche, puis cliquez sur le bouton “Créer une base de données”.

 

créer une base de données ,war

9. La configuration de Firebase est terminée Ajoutez maintenant la bibliothèque Firebase pour utiliser la base de données en temps réel Firebase dans le fichier build.gradle au niveau de l’application. Cela peut être fait en ajoutant la ligne suivante :

implémentation 'com.google.firebase:firebase-database:16.0.6'

Implémentation du code

Avant de récupérer les références, vous devrez comprendre ce qu’est une référence Firebase. Une référence Firebase pointe vers un emplacement dans la base de données Firebase où les données sont stockées. Même si vous créez plusieurs références, elles partagent toutes la même connexion à condition que vous ayez utilisé le même chemin lors de la création de la référence à partir de l’instance de base de données. Tout d’abord, nous devons disposer d’une instance de la base de données Firebase pour pouvoir l’utiliser. L’instance peut être créée par la ligne de code suivante.

 

Private FirebaseDatabase mDatabase = FirebaseDatabase.getInstance();

 

Il est maintenant nécessaire de créer des références des chemins où les données sont stockées dans la base de données. Comme les données de la base de données Firebase sont stockées au format JSON, les clés de l’objet JSON sont les chemins spécifiés dans les références. La référence au nœud racine peut être créée par la ligne de code suivante :

 

Private DatabaseReference mGetReference = mDatabase.getReference();

 

Après avoir obtenu la référence de la base de données, un écouteur asynchrone doit être attaché à la référence de la base de données qui écoute activement tout changement effectué dans la base de données. Cet écouteur renvoie initialement un instantané de données de la base de données pour la première fois lorsqu’elle est attachée. Ensuite, l’instantané des données est renvoyé lorsqu’une modification est apportée au chemin vers lequel pointe la référence de la base de données. Habituellement, la base de données contient le même type de données, mais supposons que la base de données contienne des données de types différents. Vous trouverez ci-dessous la capture d’écran de la base de données contenant des données factices :

 

données factices

Pour extraire la base de données de cette base de données, attachez le ValueEventListener à la référence de la base de données. L’écouteur peut être ajouté par le code suivant :

 

mGetReference.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { if (dataSnapshot.exists()){ HashMap dataMap = (HashMap ) dataSnapshot.getValue(); for (String key : dataMap.keySet()){ Object data = dataMap.get(key); essayez{ HashMap userData = (HashMap ) Les données; User mUser = new User((String) userData.get("name"), (int) (long) userData.get("age")); addTextToView(mUser.getName() + " - " + Integer.toString(mUser.getAge())); }catch (ClassCastException cce){ // Si l'objet ne peut pas être converti en HashMap, cela signifie qu'il est de type String. try{ String mString = String.valueOf(dataMap.get(key)); addTextToView(mString); }catch (ClassCastException cce2){ } } } } } @Override public void onCancelled(@NonNull DatabaseError databaseError) { } });

Après avoir attaché l’écouteur, il est d’abord exécuté en renvoyant initialement toutes les données de la base de données à ce moment-là. Cet écouteur sera appelé plus tard au moment où un changement aura lieu dans la base de données sur le chemin pointé par la référence à laquelle l’écouteur est attaché.

Résumé

Après avoir suivi la procédure ci-dessus, vous pourrez récupérer les données de la base de données Firebase Realtime dans Android. Si vous rencontrez des problèmes, n’hésitez pas à nous contacter à support@knowband.com. Nous proposons également un développement et des modules personnalisés pour les principales plates-formes CMS telles que Prestashop, Opencart, Magento, Magento 2 et Woocommerce. Jetez un œil à nos plus populaires Créateur d’applications mobiles Woocommerce No Code:

 

Leave a Reply

Your email address will not be published. Required fields are marked *