Comprendre Firebase pour Android

Lorsque vous développez votre projet Android à l'aide de Firebase, vous pouvez découvrir des concepts qui ne vous sont pas familiers ou qui sont spécifiques à Firebase. Cette page vise à répondre à ces questions ou à vous orienter vers des ressources pour en savoir plus.

Si vous avez des questions sur un sujet qui n'est pas abordé sur cette page, n'hésitez pas à consulter l'une de nos communautés en ligne. Nous mettrons également cette page à jour périodiquement avec de nouveaux sujets. N'hésitez pas à revenir pour voir si nous avons ajouté le sujet sur lequel vous souhaitez en savoir plus.

Plug-in Firebase Assistant pour Android Studio

Firebase Assistant est un plug-in Android Studio qui enregistre votre application Android dans un projet Firebase et ajoute les fichiers de configuration, les plug-ins et les dépendances Firebase nécessaires à votre projet Android, le tout depuis Android Studio.

Suivez les instructions de la page Premiers pas avec Android pour utiliser Firebase Assistant. Assurez-vous d'utiliser les versions les plus récentes d'Android Studio et de Firebase Assistant (accédez à File > Check for updates [Fichier > Rechercher les mises à jour]).

Lorsque vous sélectionnez des produits Firebase spécifiques à ajouter à votre application, Firebase Assistant déclare automatiquement les dépendances requises dans votre fichier app/build.gradle. Notez que si vous souhaitez utiliser la Firebase Android BoM (recommandé), mettez à jour les dépendances dans votre fichier Gradle de module (au niveau de l'application) (généralement app/build.gradle) pour importer la plate-forme BoM. Vous devrez également supprimer les versions de chaque ligne de dépendance de la bibliothèque Firebase.

De plus, pour utiliser certains produits Firebase, vous devez activer des API ou provisionner des ressources en dehors d'Android Studio. Les instructions de chaque produit dans le Firebase Assistant décrivent toutes les actions supplémentaires que vous devez effectuer. Par exemple, pour utiliser Cloud Firestore, vous devez configurer votre base de données et vos règles dans la Firebase console.

Services Google : plug-in et fichier de configuration

Lorsque vous ajoutez Firebase à votre projet Android, vous devez ajouter le google-services plug-in et un google-services.json fichier de configuration à votre projet.

Si vous ajoutez Firebase à votre projet Android via la Firebase console, l'API REST Management, ou la Firebase CLI, vous devez ajouter manuellement le plug-in et le fichier de configuration à votre projet. Toutefois, si vous utilisez Firebase Assistant, ces tâches sont effectuées automatiquement lors de la configuration.

Consultez la documentation Android pour découvrir comment le plug-in et le fichier de configuration des services Google fonctionnent ensemble.

Firebase Android BoM (Bill of Materials)

La Firebase Android BoM (Bill of Materials) vous permet de gérer toutes les versions de votre bibliothèque Firebase en ne spécifiant qu'une seule version : celle de la BoM's version.

Lorsque vous utilisez le Firebase BoM dans votre application, le BoM extrait automatiquement les versions de bibliothèque individuelles mappées à la version de BoM's. Toutes les versions de bibliothèque individuelles seront compatibles. Lorsque vous mettez à jour la version de la BoM's dans votre application, toutes les bibliothèques Firebase que vous utilisez dans votre application sont mises à jour vers les versions mappées à cette version de la BoM.

Pour savoir quelles versions de la bibliothèque Firebase sont mappées à une BoM version spécifique, consultez les notes de version de cette BoM version. Si vous devez comparer les versions de bibliothèque mappées à une BoM version par rapport à une autre BoM version, utilisez le widget de comparaison ci-dessous.

En savoir plus sur la compatibilité de Gradle avec les plates-formes BoM

Voici comment utiliser la Firebase Android BoM pour déclarer des dépendances dans votre fichier Gradle de module (au niveau de l'application) (généralement app/build.gradle). Lorsque vous utilisez la BoM, vous ne spécifiez pas de versions de bibliothèque individuelles dans les lignes de dépendance.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:34.17.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Voici quelques questions fréquentes sur l'utilisation de la Firebase Android BoM :

Comparer les versions Firebase BoM

Modules de bibliothèque d'extensions Kotlin (KTX)

Modules de fonctionnalité et Play Feature Delivery

Depuis mai 2021 (Firebase BoM v28.0.0), les SDK Firebase pour Android peuvent être utilisés dans des modules de fonctionnalités dynamiques qui sont installés séparément de votre module d'application de base.

Pour activer la compatibilité avec les modules de fonctionnalités dynamiques, ajoutez la dépendance suivante au fichier build.gradle de votre module de base :

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta04'
}

Maintenant que vous avez ajouté la compatibilité avec les modules dynamiques, vous pouvez ajouter des dépendances du SDK Firebase (avec ou sans la Firebase BoM) aux modules de fonctionnalités de votre application et les utiliser comme vous le feriez normalement.

Par exemple, si votre application utilise Realtime Database pour alimenter une fonctionnalité en temps réel spécifique, vous pouvez ajouter la dépendance firebase-database au fichier build.gradle du module de fonctionnalité plutôt qu'au module de base. Cela réduira la taille du téléchargement pour la plupart des utilisateurs.

Tenez compte des mises en garde suivantes lorsque vous utilisez des SDK Firebase dans des modules de fonctionnalités :

  • Les produits tels que Dynamic Links ou Firebase In-App Messaging, qui s'appuient sur l'événement Analytics first_open, peuvent manquer cet événement lorsqu'ils sont utilisés dans un module de fonctionnalité dynamique.

  • Lorsque vous utilisez Cloud Firestore et Authentication ensemble, vous devez toujours les inclure dans le même module. Si cela n'est pas possible, assurez-vous que Authentication est chargé avant Cloud Firestore. Sinon, certaines opérations Cloud Firestore peuvent avoir un état d'authentification incorrect.

  • Lorsque vous utilisez firebase-crashlytics-ndk comme dépendance d'un module de fonctionnalité dynamique, vous devez définir la propriété unstrippedNativeLibsDir dans le fichier build.gradle de votre application, comme décrit dans la documentation Crashlytics NDK.

Pour en savoir plus sur les modules de fonctionnalités et Play Feature Delivery, consultez Présentation de Play Feature Delivery.

Plug-in Gradle des services Google, services Google Play et Google Play Store

Plusieurs éléments de l'écosystème Google, Firebase et Android ont des conventions de nommage similaires. Voici une brève explication pour chacun d'eux :

Plug-in Gradle des services Google
Plug-in Gradle (com.google.gms.google-services) qui s'exécute au moment de la compilation pour s'assurer que votre application dispose de la configuration appropriée pour accéder aux API Firebase et Google APIs
Malgré son nom, ce plug-in n'a aucun lien avec les services Google Play (voir l'entrée suivante) et n'a aucun impact sur les fonctionnalités de votre application lors de l'exécution.
Ce plug-in traite également le fichier google-services.json que vous ajoutez à votre application lors de la configuration de Firebase. En savoir plus sur le plug-in Gradle des services Google.
Services Google Play
Service d'arrière-plan invisible qui s'exécute sur un appareil Android et fournit plusieurs API Google courantes (comme Google Maps et Google Sign-In) aux applications de l'appareil
En centralisant ces API courantes dans un seul service, il réduit la taille des autres applications et permet à un appareil de recevoir des mises à jour de sécurité automatiques et des améliorations de fonctionnalités sans mise à jour de l'OS. En savoir plus sur les services Google Play.
Google Play Store
Boutique permettant de télécharger des applications, des films, des livres et plus encore sur un appareil Android
En tant que développeur, vous gérez la distribution, les versions, etc. de votre application via la Google Play Console. Si un appareil dispose du Google Play Store, il exécute également les services Google Play (voir l'entrée précédente). En savoir plus sur le Google Play Store pour les développeurs.
Services de jeux Google Play
Ensemble d'API pour les développeurs de jeux mobiles
En savoir plus sur les services de jeux Google Play et sur l' intégration de Firebase à votre projet de services de jeux Google Play.

Ressources Open Source pour les SDK Firebase pour Android

Firebase est compatible avec le développement Open Source. Nous encourageons les contributions et les commentaires de la communauté.

SDK Firebase pour Android

La plupart des SDK Firebase pour Android sont développés en tant que bibliothèques Open Source dans notre dépôt GitHub Firebase public . Nous nous efforçons de transférer bientôt les bibliothèques Firebase développées en privé restantes vers notre GitHub public.

Exemples de démarrage rapide

Firebase gère une collection d'exemples de démarrage rapide pour la plupart des API Firebase sur Android. Retrouvez ces guides de démarrage rapide dans notre dépôt GitHub Firebase public Firebase GitHub quickstart repository.

Vous pouvez ouvrir chaque guide de démarrage rapide en tant que projet Android Studio, puis l'exécuter sur un appareil mobile ou un appareil virtuel (AVD). Vous pouvez également utiliser ces guides de démarrage rapide comme exemple de code pour utiliser les SDK Firebase.

Autres sujets d'intérêt