Cette page propose de brefs aperçus de plusieurs concepts importants concernant les projets Firebase. Lorsqu'ils sont disponibles, suivez les liens pour trouver des informations plus détaillées sur les fonctionnalités, les services, les outils et les meilleures pratiques.
Relation entre les projets, applications et produits Firebase
Un projet Firebase est l'entité de niveau supérieur pour Firebase. Dans un projet, vous pouvez enregistrer vos applications Apple, Android ou Web. Après avoir enregistré vos applications auprès de Firebase, vous pouvez ajouter les SDK Firebase pour un nombre illimité de produits Firebase , tels que Analytics, Cloud Firestore, Performance Monitoring ou Remote Config.
Découvrez des informations plus détaillées sur ce processus dans le guide de démarrage de votre plateforme :
iOS+ | Android | Internet | Unité | C++ | Battement .
Comprendre la hiérarchie des projets Firebase
Ce diagramme montre la hiérarchie de base d'un projet Firebase. Voici les relations clés :
Un projet Firebase est comme un conteneur pour toutes vos applications et toutes les ressources et services fournis pour le projet.
Un projet Firebase peut avoir une ou plusieurs applications Firebase enregistrées (par exemple, les versions iOS et Android d'une application, ou les versions gratuite et payante d'une application).
Toutes les applications Firebase enregistrées sur le même partage de projet Firebase et ont accès à toutes les mêmes ressources et services fournis pour le projet . Voici quelques exemples:
Toutes les applications Firebase enregistrées dans le même projet Firebase partagent les mêmes backends, comme l'hébergement Firebase, l'authentification, la base de données en temps réel, Cloud Firestore, Cloud Storage et Cloud Functions.
Toutes les applications Firebase enregistrées dans le même projet Firebase sont associées à la même propriété Google Analytics, où chaque application Firebase constitue un flux de données distinct dans cette propriété.
Relation entre les projets Firebase et Google Cloud
Lorsque vous créez un nouveau projet Firebase, vous créez en réalité un projet Google Cloud en arrière-plan. Vous pouvez même créer d'abord un projet Google Cloud, puis ajouter Firebase au projet ultérieurement. Vous pouvez considérer un projet Google Cloud comme un conteneur virtuel pour les données, le code, la configuration et les services.
Notez que pour tous les projets Firebase, Firebase ajoute automatiquement une étiquette firebase:enabled
dans la page Étiquettes de votre projet dans la console Google Cloud. Apprenez-en davantage sur ce label dans notre FAQ .
Puisqu'un projet Firebase est un projet Google Cloud :
Vous pouvez interagir avec un projet dans la console Firebase ainsi que dans la console Google Cloud et dans la console des API Google .
Vous pouvez utiliser des produits et des API de Firebase et de Google Cloud dans un projet.
La facturation et les autorisations d'un projet sont partagées entre Firebase et Google Cloud.
Les identifiants uniques d'un projet (comme le numéro de projet et l'ID du projet ) sont partagés entre Firebase et Google Cloud.
La suppression d'un projet le supprime dans Firebase et Google Cloud.
Configurer un projet Firebase et enregistrer des applications
Vous pouvez configurer un projet Firebase et enregistrer des applications dans la console Firebase (ou, pour les cas d'utilisation avancés, via l' API REST de gestion Firebase ou la CLI Firebase ). Lorsque vous configurez un projet et enregistrez des applications, vous devez prendre certaines décisions organisationnelles et ajouter des informations de configuration spécifiques à Firebase à vos projets locaux.
Pour les applications de production, vous devez mettre en place un flux de développement clair, qui implique généralement l'utilisation de plusieurs environnements. Consultez notre documentation sur les workflows des développeurs , y compris les bonnes pratiques générales et les directives générales de sécurité pour la configuration de projets Firebase et l'enregistrement d'applications afin de créer votre workflow de développement.
Interagir avec un projet Firebase
Outre les SDK du produit, vous pouvez interagir directement avec un projet Firebase à l'aide de plusieurs outils et interfaces différents.
Console Firebase
La console Firebase offre l'environnement le plus riche pour gérer les produits, les applications et les paramètres au niveau du projet Firebase.
Le panneau de gauche de la console répertorie les produits Firebase, organisés par catégories de niveau supérieur. En haut du panneau de gauche, accédez aux paramètres d'un projet en cliquant sur les intégrations , les autorisations d'accès et la facturation .
. Les paramètres d'un projet incluentLe milieu de la console affiche des boutons qui lancent des flux de travail de configuration pour enregistrer différents types d'applications. Une fois que vous avez commencé à utiliser Firebase, la zone principale de la console se transforme en un tableau de bord qui affiche les statistiques sur les produits que vous utilisez.
Notez que, étant donné qu'un projet Firebase est également un projet Google Cloud, vous constaterez peut-être que diverses tâches ou produits nécessitent que vous utilisiez la console Google Cloud au lieu de la console Firebase.
Firebase CLI (un outil de ligne de commande)
Firebase propose également la Firebase CLI pour configurer et gérer des produits Firebase spécifiques, tels que Firebase Hosting, Cloud Functions for Firebase et Firebase Extensions.
Après avoir installé la CLI, vous avez accès à la commande globale firebase
. Utilisez la CLI pour lier votre répertoire d'applications local à un projet Firebase , puis déployez de nouvelles versions du contenu hébergé par Firebase ou des mises à jour des fonctions.
API REST de gestion Firebase
À l'aide de l' API REST Firebase Management , vous pouvez gérer un projet Firebase par programmation. Par exemple, vous pouvez enregistrer par programmation une application avec un projet ou répertorier les applications déjà enregistrées ( iOS+ | Android | web ).
Identifiants du projet Firebase
Un projet Firebase peut être identifié dans le backend Firebase et dans diverses interfaces de développement à l'aide de différents identifiants, notamment le nom du projet , le numéro du projet et l' ID du projet .
Le nom du projet
Lorsque vous créez un projet, vous fournissez un nom de projet . Cet identifiant est le nom interne uniquement d'un projet dans la console Firebase , la console Google Cloud et la CLI Firebase . Le nom du projet n'est exposé dans aucun produit, service ou ressource Firebase ou Google Cloud visible publiquement ; il sert simplement à vous aider à distinguer plus facilement plusieurs projets.
Vous pouvez modifier le nom d'un projet à tout moment dans les Paramètres du projet de la console Firebase. Le nom du projet est affiché dans le volet supérieur.
Le numéro du projet
Un projet Firebase (et son projet Google Cloud associé ) possède un numéro de projet . Il s'agit de l'identifiant canonique unique au monde attribué par Google pour le projet. Utilisez cet identifiant lors de la configuration des intégrations et/ou des appels d'API vers Firebase, Google ou des services tiers.
Vous ne pouvez pas modifier un numéro de projet. Si vous supprimez un projet, le numéro de projet est également supprimé et ne peut plus jamais être utilisé par un autre projet.
Recherchez le numéro de projet de votre projet Firebase à l'aide de l'une de ces options :
À l'aide de la console Firebase : cliquez sur Paramètres du projet . Le numéro du projet est affiché dans le volet supérieur.
À l'aide de la CLI Firebase : exécutez
firebase projects:list
. Le numéro de projet est affiché avec tous les projets Firebase associés à votre compte.À l'aide de l'API REST de Firebase Management :
projects.list
. Le corps de la réponse contient le numéro de projet dans l'objetFirebaseProject
.
Pour de nombreux appels d'API, vous devez inclure un identifiant unique pour un projet. Bien que de nombreuses API acceptent l' ID du projet , il est recommandé d'utiliser le numéro du projet pour effectuer des appels d'API vers Firebase, Google ou des services tiers.
Apprenez-en davantage sur l'utilisation des identifiants de projet, en particulier le numéro de projet, dans la norme AIP 2510 de Google.
L'identifiant du projet
Un projet Firebase (et son projet Google Cloud associé ) possède un ID de projet . Il s'agit d'un identifiant unique défini par l'utilisateur pour le projet sur l'ensemble de Firebase et de Google Cloud. Lorsque vous créez un projet Firebase, Firebase attribue automatiquement un ID unique au projet, mais vous pouvez le modifier lors de la configuration du projet. Cet identifiant doit généralement être traité comme un alias pratique pour référencer le projet.
Recherchez l'ID de projet de votre projet Firebase à l'aide de l'une de ces options :
À l'aide de la console Firebase : cliquez sur Paramètres du projet . L'ID du projet est affiché dans le volet supérieur.
À l'aide de la CLI Firebase : exécutez
firebase projects:list
. L'ID du projet est affiché avec tous les projets Firebase associés à votre compte.À l'aide de l'API REST de Firebase Management :
projects.list
. Le corps de la réponse contient l'ID du projet dans l'objetFirebaseProject
.
L'ID du projet s'affiche dans les ressources Firebase visibles publiquement, par exemple :
- Sous-domaine d'hébergement par défaut :
PROJECT_ID .web.app
etPROJECT_ID .firebaseapp.com
- URL de la base de données en temps réel par défaut :
PROJECT_ID -default-rtdb.firebaseio.com
ouPROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
- Nom du bucket Cloud Storage par défaut :
PROJECT_ID .appspot.com
Pour toutes les ressources mentionnées ci-dessus, vous pouvez créer des instances autres que celles par défaut. Les noms visibles publiquement des noms autres que ceux par défaut sont entièrement personnalisables. Vous pouvez connecter des domaines personnalisés à un site hébergé par Firebase, partitionner la base de données en temps réel et créer plusieurs compartiments Cloud Storage (consultez la page de démarrage spécifique à la plate-forme).
Dans certains cas d'utilisation, plusieurs projets Firebase peuvent être associés au même répertoire d'applications locales. Dans ces situations, lorsque vous utilisez la CLI Firebase , vous devez transmettre l'indicateur --project
avec les commandes firebase
pour indiquer le projet Firebase avec lequel vous souhaitez interagir.
Vous pouvez également configurer un alias de projet pour chaque projet Firebase afin de ne pas avoir à mémoriser les ID de projet.
Pour de nombreux appels d'API, vous devez inclure un identifiant unique pour un projet. Bien que de nombreuses API acceptent l'ID du projet, il est recommandé d'utiliser le numéro du projet pour effectuer des appels d'API vers Firebase, Google ou des services tiers.
Apprenez-en davantage sur l'utilisation des identifiants de projet, en particulier le numéro de projet, dans la norme AIP 2510 de Google.
Fichiers de configuration et objets Firebase
Lorsque vous enregistrez une application auprès d'un projet Firebase, la console Firebase fournit un fichier de configuration Firebase (applications Apple/Android) ou un objet de configuration (applications Web) que vous ajoutez directement à votre répertoire d'applications local.
- Pour les applications Apple, vous ajoutez un fichier de configuration
GoogleService-Info.plist
. - Pour les applications Android, vous ajoutez un fichier de configuration
google-services.json
. - Pour les applications Web, vous ajoutez un objet de configuration Firebase.
À tout moment, vous pouvez obtenir le fichier de configuration ou l'objet Firebase d'une application .
Un fichier ou un objet de configuration Firebase associe une application à un projet Firebase spécifique et à ses ressources (bases de données, buckets de stockage, etc.). La configuration comprend des « options Firebase », qui sont des paramètres requis par les services Firebase et Google pour communiquer avec les API du serveur Firebase et pour associer les données client au projet Firebase et à l'application Firebase. Voici les "options Firebase" minimales requises :
Clé API : une simple chaîne cryptée utilisée lors de l'appel de certaines API qui n'ont pas besoin d'accéder aux données privées des utilisateurs (exemple de valeur :
AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
)ID du projet : un identifiant unique défini par l'utilisateur pour le projet sur l'ensemble de Firebase et de Google Cloud. Cet identifiant peut apparaître dans les URL ou les noms de certaines ressources Firebase, mais il doit généralement être traité comme un alias pratique pour référencer le projet. (exemple de valeur :
myapp-project-123
)ID d'application ("AppID") : l'identifiant unique de l'application Firebase sur l'ensemble de Firebase avec un format spécifique à la plateforme :
- Applications Apple Firebase :
GOOGLE_APP_ID
(exemple de valeur :1:1234567890:ios:321abc456def7890
)
Il ne s'agit pas d'un identifiant Apple Bundle. - Applications Android Firebase :
mobilesdk_app_id
(exemple de valeur :1:1234567890:android:321abc456def7890
)
Il ne s'agit pas d'un nom de package Android ou d'un identifiant d'application Android. - Applications Web Firebase :
appId
(exemple de valeur :1:65211879909:web:3ae38ef1cdcb2e01fe5f0c
)
- Applications Apple Firebase :
Le contenu du fichier de configuration ou de l'objet Firebase est considéré comme public, y compris l'ID spécifique à la plate-forme de l'application (ID du bundle Apple ou nom du package Android) et les valeurs spécifiques au projet Firebase, telles que la clé API, l'ID du projet, l'URL de la base de données en temps réel et Nom du bucket Cloud Storage. Compte tenu de cela, utilisez les règles de sécurité Firebase pour protéger vos données et fichiers dans Realtime Database , Cloud Firestore et Cloud Storage .
Pour les projets open source, nous déconseillons généralement d'inclure le fichier de configuration ou l'objet Firebase de l'application dans le contrôle de code source car, dans la plupart des cas, vos utilisateurs doivent créer leurs propres projets Firebase et pointer leurs applications vers leurs propres ressources Firebase (via leur propre configuration Firebase). fichier ou objet).
Limites générales pour les projets, applications et sites Firebase
Voici quelques limites générales pour les projets, applications et sites Firebase :
Nombre de projets par compte
- Plan tarifaire Spark — Le quota de création de projets est limité à un nombre inférieur de projets (généralement autour de 5 à 10).
- Plan tarifaire Blaze — Le quota de création de projets par compte augmente considérablement tant que le compte Cloud Billing associé est en règle.
La limite du quota de création de projets est rarement une préoccupation pour la plupart des développeurs, mais si nécessaire, vous pouvez demander une augmentation du quota de projets .
Sachez que la suppression complète d'un projet nécessite 30 jours et est prise en compte dans le quota de projet jusqu'à ce que le projet soit entièrement supprimé.
Nombre d'applications par projet
Firebase limite le nombre total d'applications Firebase dans un projet Firebase à 30.
Vous devez vous assurer que toutes les applications Firebase au sein d'un même projet Firebase sont des variantes de plate-forme de la même application du point de vue de l'utilisateur final. Apprenez-en davantage sur la multilocation dans nos documents sur les meilleures pratiques.
Apprenez-en davantage sur la limite d’applications par projet dans la FAQ.
Nombre de sites d'hébergement par projet
La fonctionnalité multisite Firebase Hosting prend en charge un maximum de 36 sites par projet.
Lancement de votre application
- Configurez des alertes budgétaires pour votre projet dans la console Google Cloud.
- Surveillez le tableau de bord d'utilisation et de facturation dans la console Firebase pour obtenir une image globale de l'utilisation de votre projet sur plusieurs services Firebase.
- Consultez la liste de contrôle de lancement de Firebase .