Si ce n'est pas encore fait, ajoutez Firebase à votre projet Android.
Créer une base de données
Accédez à la section Realtime Database de la console Firebase. Vous êtes alors invité à sélectionner un projet Firebase existant. Suivez le workflow de création de base de données.
Sélectionnez un mode de démarrage pour votre Firebase Security Rules:
- Mode test
Bon pour démarrer avec les bibliothèques clientes mobiles et Web, mais permet à n’importe qui de lire et d’écraser vos données. Après les tests, faites consultez Comprendre les règles Firebase Realtime Database .
Pour commencer à utiliser le SDK Web, Apple ou Android, sélectionnez "testmode".
- Mode verrouillé
Interdit toute lecture et écriture à partir de clients mobiles et Web. Vos serveurs d'applications authentifiés peuvent toujours accéder à votre base de données.
Choisissez un emplacement pour la base de données.
En fonction du emplacement de la base de données, le L'URL de la nouvelle base de données se présentera sous l'une des formes suivantes:
(pour bases de données dansDATABASE_NAME.firebaseio.com
us-central1
) (pour les bases de données de tous les autres emplacements)DATABASE_NAME.REGION.firebasedatabase.app
Cliquez sur OK.
Lorsque vous activez Realtime Database, cela active également l'API dans le Gestionnaire d'API Cloud.
Ajouter le SDK Realtime Database à votre application
Dans le fichier Gradle de votre module (au niveau de l'application) (généralement<project>/<app-module>/build.gradle.kts
ou
<project>/<app-module>/build.gradle
),
Ajoutez la dépendance pour la bibliothèque Realtime Database pour Android. Nous vous recommandons d'utiliser
Firebase Android BoM
pour contrôler la gestion des versions des bibliothèques.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.2.0")) // Add the dependency for the Realtime Database library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-database") }
En utilisant Firebase Android BoM, votre application utilisera toujours des versions compatibles des bibliothèques Firebase Android.
(Alternative) Ajouter des dépendances de la bibliothèque Firebase sans utiliser l'BoM
Si vous choisissez de ne pas utiliser Firebase BoM, vous devez spécifier chaque version de la bibliothèque Firebase dans sa ligne de dépendance.
Notez que si vous utilisez plusieurs bibliothèques Firebase dans votre application, recommandent d'utiliser BoM pour gérer les versions de la bibliothèque, ce qui garantit que toutes les versions sont compatibles.
dependencies { // Add the dependency for the Realtime Database library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-database:21.0.0") }
Configurer Realtime Database Security Rules
Realtime Database fournit un langage de règles déclaratives qui permet de définir la façon dont vos données doivent être structurées, et quand il est possible de lire et d'écrire des données.
Écrire dans votre base de données
Récupérez une instance de votre base de données à l'aide de getInstance()
et
référencer l'emplacement où
vous voulez écrire.
Kotlin+KTX
// Write a message to the database val database = Firebase.database val myRef = database.getReference("message") myRef.setValue("Hello, World!")
Java
// Write a message to the database FirebaseDatabase database = FirebaseDatabase.getInstance(); DatabaseReference myRef = database.getReference("message"); myRef.setValue("Hello, World!");
Vous pouvez enregistrer une gamme de types de données dans la base de données de cette manière, y compris des objets Java. Lorsque vous enregistrez un objet, les réponses de tous les getters sont enregistrées en tant qu'enfants de cet emplacement.
Lire à partir de votre base de données
Pour mettre à jour les données de votre application en temps réel, vous devez ajouter un
ValueEventListener
à la référence que vous venez de créer.
La méthode onDataChange()
de cette classe est déclenchée une fois lorsque l'écouteur est
et à chaque fois que les données
changent, y compris les enfants.
Kotlin+KTX
// Read from the database myRef.addValueEventListener(object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // This method is called once with the initial value and again // whenever data at this location is updated. val value = dataSnapshot.getValue<String>() Log.d(TAG, "Value is: $value") } override fun onCancelled(error: DatabaseError) { // Failed to read value Log.w(TAG, "Failed to read value.", error.toException()) } })
Java
// Read from the database myRef.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { // This method is called once with the initial value and again // whenever data at this location is updated. String value = dataSnapshot.getValue(String.class); Log.d(TAG, "Value is: " + value); } @Override public void onCancelled(@NonNull DatabaseError error) { // Failed to read value Log.w(TAG, "Failed to read value.", error.toException()); } });
Facultatif : Configurer ProGuard
Lorsque vous utilisez Firebase Realtime Database dans votre application avec ProGuard, vous devez réfléchir à la façon dont vos objets de modèle seront sérialisés et désérialisés après l'obscurcissement. Si vous utilisez DataSnapshot.getValue(Class)
ou
DatabaseReference.setValue(Object)
pour lire et écrire des données, vous devrez
Ajoutez des règles au fichier proguard-rules.pro
:
# Add this global rule
-keepattributes Signature
# This rule will properly ProGuard all the model classes in
# the package com.yourcompany.models.
# Modify this rule to fit the structure of your app.
-keepclassmembers class com.yourcompany.models.** {
*;
}
Pour obtenir de l'aide concernant des questions ou des problèmes liés à ProGuard, consultez le Forums de la communauté Guardsquare pour obtenir l'aide d'un expert.
Préparer le lancement
Avant de lancer votre application, nous vous recommandons de consulter notre checklist avant lancement pour vous assurer que votre application c'est parti !
N'oubliez pas d'activer App Check pour vous assurer que seules vos applications peuvent accéder à vos bases de données.
Étapes suivantes
- Découvrez comment structurer les données pour Realtime Database
- Faites évoluer vos données sur plusieurs instances de base de données.
- Lire et écrire des données :
- Affichez votre base de données dans la console Firebase.