En savoir plus sur Android et Firebase

Au fur et à mesure que vous développez votre projet Android à l'aide de Firebase, vous découvrirez peut-être des concepts inconnus ou 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 ne sont pas couverts sur cette page, ne hésitez pas à visiter un de nos communautés en ligne . Nous mettrons également à jour régulièrement cette page avec de nouveaux sujets, alors revenez voir si nous avons ajouté le sujet sur lequel vous souhaitez en savoir plus !

Plugin Firebase Assistant pour Android Studio

L'assistant Firebase est un plug-in Android Studio qui enregistre votre application Android avec un projet Firebase et ajoute les fichiers de configuration Firebase, les plug-ins et les dépendances nécessaires à votre projet Android, le tout depuis Android Studio !

Suivez les instructions de l' Android page Mise en route à utiliser l'Assistant Firebase. Assurez - vous que vous utilisez les versions les plus à jour à la fois Android Studio Assistant Firebase (allez dans Fichier> Vérifier les mises à jour).

Lorsque vous sélectionnez des produits spécifiques Firebase ajouter à votre application, l'assistant Firebase déclare automatiquement les dépendances nécessaires dans votre app/build.gradle fichier. Cependant, pour utiliser les fonctionnalités de Firebase qui dépassent les capacités actuelles de l'assistant Firebase, vous souhaiterez peut-être apporter des modifications manuelles à ces dépendances :

  • Si vous voulez utiliser le Firebase Android BoM , mettez à jour les dépendances dans votre module (app-niveau) fichier Gradle (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.

  • Si vous souhaitez utiliser une bibliothèque de Kotlin , modifiez la ligne de dépendance ajoutée à votre module (app-niveau) de fichier Gradle (généralement app/build.gradle ) pour utiliser la ktx version de la bibliothèque Firebase à la place.

Services Google — plugin et fichier de configuration

Dans le cadre de l' ajout Firebase à votre projet Android, vous devez ajouter les google-services plugin et un google-services.json fichier de configuration à votre projet.

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

Visitez la documentation Android pour en savoir plus sur la façon dont les services plug - in Google et le travail de fichier de configuration ensemble.

Firebase Android BoM (nomenclature)

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

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

Pour en savoir quelles versions bibliothèque Firebase sont mis en correspondance à une version spécifique BoM, consultez les notes de version pour cette version BoM. Si vous avez besoin de comparer les versions bibliothèque cartographiés une version BoM par rapport à une autre version BoM, utilisez la comparaison widget de ci - dessous.

En savoir plus sur le soutien de Gradle pour les plates - formes BoM .

Voici comment utiliser Android Firebase la BoM pour déclarer des dépendances dans votre module (niveau d'application) de fichier Gradle (généralement app/build.gradle ). Lorsque vous utilisez la nomenclature, 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:28.3.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équemment posées sur l'utilisation de Firebase Android BoM :

Comparer les versions de la nomenclature de Firebase

Bibliothèques d'extensions Kotlin (KTX)

Les bibliothèques d'extensions Firebase Kotlin (KTX) sont de petits compagnons des SDK Firebase de base qui vous permettent d'écrire du code Kotlin beau et idiomatique.

Pour utiliser une bibliothèque KTX dans votre application, changer votre dépendance à inclure le -ktx suffixe. Chaque bibliothèque KTX a automatiquement une dépendance sur la bibliothèque de base, il n'est donc pas nécessaire d'inclure les deux dépendances dans votre application.

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

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Chaque bibliothèque KTX fournit différentes extensions syntaxiques de la bibliothèque de base. Par exemple, la bibliothèque Analytics KTX simplifie la journalisation des événements :

Avant ( en utilisant la bibliothèque de base)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Après (utilisant à la place de la bibliothèque KTX)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Tous les produits Firebase offrent une bibliothèque KTX sauf pour Firebase ML et l' indexation des applications.

Si vous n'êtes pas encore, consultez les documents de référence de l' API pour les bibliothèques KTX.

Modules de fonctionnalités et livraison de fonctionnalités Play

Depuis mai 2021 (Firebase BoM v28.0.0), les SDK Android Firebase 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 le support de modules dynamiques fonctionnalité, ajoutez la dépendance à la suite de votre module de base build.gradle fichier:

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

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

Par exemple, si votre application utilise en temps réel la base de données en temps réel au pouvoir disposent d' une spécifique que vous pouvez ajouter la firebase-database de build.gradle firebase-database de dépendance à l' build.gradle du module de fonction plutôt que le module de base. Cela réduira la taille du téléchargement pour la plupart des utilisateurs.

Tenez compte des mises en garde suivantes lors de l'utilisation des SDK Firebase dans les modules de fonctionnalités :

  • Les produits tels que des liens dynamiques ou Firebase messagerie In-App qui se fondent sur le Analytics first_open événement peut manquer cet événement lorsqu'il est utilisé dans un module de fonction dynamique.

  • Lorsque vous utilisez Cloud Firestore et l'authentification ensemble, vous devez toujours les inclure tous les deux dans le même module. Si cela est impossible, assurez - vous que l' authentification est chargé avant - Cloud Firestore; sinon, certaines opérations Cloud Firestore peuvent avoir un état d'authentification incorrect.

  • Lors de l' utilisation firebase-crashlytics-ndk en tant que dépendance d'un module de fonction dynamique, vous devez définir la unstrippedNativeLibsDir propriété de votre application build.gradle fichier, comme décrit dans la documentation Crashlytics NDK .

Pour plus d' informations sur les modules de fonctionnalités et Play Livraison, visite Vue d' ensemble du jeu Livraison de fonction .

Services Google Plugin Gradle vs services Google Play vs Google Play Store

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

Plugin Gradle des services Google
Un plugin Gradle ( com.google.gms.google-services ) qui fonctionne au moment de la construction pour assurer que votre application a la configuration droit d'accès Firebase et des API Google
Malgré son nom, ce plugin n'a aucun rapport avec les services Google Play (voir l'entrée suivante) et n'a aucun impact sur les capacités de votre application au moment de l'exécution.
Ce plugin traite également le google-services.json fichier que vous ajoutez à votre application dans le cadre de la mise en place Firebase. En savoir plus sur les services plug - in Google Gradle .
Services Google Play
Un 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 sur l'appareil
En centralisant ces API communes dans un seul service, cela 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 du système d'exploitation. En savoir plus sur les services Google Play .
Google Play Store
Un magasin pour 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 console Google Play. 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
Un ensemble d'API pour les développeurs de jeux mobiles
En savoir plus sur Google Play Jeux services et comment intégrer Firebase avec Google Play Jeux projet de services .

Ressources open source pour les SDK Firebase Android

Firebase prend en charge le développement open source, et nous encourageons les contributions et les commentaires de la communauté.

SDK Android Firebase

La plupart Firebase Android sont développés SDKs bibliothèques open source dans notre publique dépôt Firebase GitHub . Nous travaillons activement à déplacer bientôt les bibliothèques Firebase restantes développées en privé 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 QuickStart dans notre publique dépôt QuickStart Firebase GitHub .

Vous pouvez ouvrir chaque démarrage rapide en tant que projet Android Studio, puis les 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 l'utilisation des SDK Firebase.

Autres sujets d'intérêt