Vous rencontrez d'autres difficultés ou vous ne trouvez pas votre problème ci-dessous ? Veuillez signaler un bug ou demander une fonctionnalité et rejoindre les discussions sur Stack Overflow.
Projets et applications Firebase
Qu'est-ce qu'un projet Firebase ?
Un projet Firebase est l'entité de niveau supérieur de Firebase. Dans un projet, vous pouvez enregistrer vos applications Apple, Android ou Web. Une fois que vous avez enregistré vos applications auprès de Firebase, vous pouvez ajouter les SDK Firebase spécifiques au produit à votre application, comme Analytics, Cloud Firestore, Crashlytics ou Remote Config.
Vous devez enregistrer vos variantes d'applications Apple, Android et Web dans un seul projet Firebase. Vous pouvez utiliser plusieurs projets Firebase pour prendre en charge plusieurs environnements, tels que le développement, la préproduction et la production.
Voici quelques ressources pour en savoir plus sur les projets Firebase:
- Comprendre les projets Firebase : fournit un bref aperçu de plusieurs concepts importants sur les projets Firebase, y compris leur relation avec Google Cloud et la hiérarchie de base d'un projet, de ses applications et de ses ressources.
- Bonnes pratiques générales pour configurer des projets Firebase : fournit des bonnes pratiques générales et générales pour configurer des projets Firebase et enregistrer vos applications dans un projet afin de disposer d'un workflow de développement clair qui utilise des environnements distincts.
Notez que pour tous les projets Firebase, Firebase ajoute automatiquement un libellé firebase:enabled
sur la page Libellés de votre projet dans la console Google Cloud. Pour en savoir plus sur ce libellé, consultez nos questions fréquentes.
Qu'est-ce qu'une organisation Google Cloud ?
Une organisation Google Cloud est un conteneur pour les projets Google Cloud (y compris les projets Firebase). Cette hiérarchie permet une meilleure organisation, une gestion des accès et un audit de vos projets Google Cloud et Firebase. Pour en savoir plus, consultez la section Créer et gérer des organisations.
Comment ajouter Firebase à un projet Google Cloud existant ?
Vous pouvez avoir des projets Google Cloud existants gérés via la console Google Cloud ou la console Google APIs.
Vous pouvez ajouter Firebase à ces projets Google Cloud existants à l'aide de l'une des options suivantes:
- À l'aide de la console Firebase.
- Utiliser une option programmatique :
- Appelez le point de terminaison de l'API REST Firebase Management
projects.addFirebase
. - Exécutez la commande de la CLI Firebase
firebase projects:addfirebase
. - Utilisez Terraform.
- Appelez le point de terminaison de l'API REST Firebase Management
Découvrez comment ajouter Firebase à un projet Google Cloud.
Comment fonctionne l'intégration de Firebase à Google Cloud ?
Firebase est étroitement intégré à Google Cloud. Les projets sont partagés entre Firebase et Google Cloud. Les services Firebase et Google Cloud peuvent donc être activés dans les projets. Vous pouvez accéder au même projet à partir de la console Firebase ou de la console Google Cloud. Plus précisément :
- Certains produits Firebase sont pris en charge directement par Google Cloud, comme Cloud Storage for Firebase. La liste des produits compatibles avec Google Cloud va continuer de croître au fil du temps.
- Un grand nombre de vos paramètres, y compris vos collaborateurs et vos informations de facturation, sont partagés entre Firebase et Google Cloud. Votre utilisation de Firebase et de Google Cloud apparaît sur la même facture.
De plus, lorsque vous passez à la formule Blaze, vous pouvez utiliser l'infrastructure en tant que service et les API de Google Cloud de classe mondiale directement dans votre projet Firebase, au tarif Google Cloud standard. Vous pouvez également exporter des données de Google Cloud directement vers BigQuery pour les analyser. Pour en savoir plus, consultez Associer BigQuery à Firebase.
L'utilisation de Google Cloud avec Firebase présente de nombreux avantages en termes de sécurité, de latence et de gain de temps (par rapport aux autres services cloud qui ne sont pas colocalisés). Pour en savoir plus, consultez le site Google Cloud.
Pourquoi mon projet Google Cloud est-il associé au libellé firebase:enabled
?
Sur la page Étiquettes de votre projet dans la console Google Cloud, vous pouvez voir une étiquette firebase:enabled
(plus précisément, un Key
de firebase
avec un Value
de enabled
).
Firebase a automatiquement ajouté ce libellé, car votre projet est un projet Firebase. Cela signifie que des configurations et des services spécifiques à Firebase sont activés pour votre projet. En savoir plus sur la relation entre les projets Firebase et Google Cloud
Nous vous recommandons vivement de ne pas modifier ni supprimer ce libellé. Ce libellé est utilisé par Firebase et Google Cloud pour lister vos projets Firebase (par exemple, à l'aide du point de terminaison projects.list
de l'API REST ou dans les menus de la console Firebase).
Notez que l'ajout manuel de ce libellé à votre liste de libellés de projet n'active PAS les configurations et services spécifiques à Firebase pour votre projet Google Cloud. Pour ce faire, vous devez ajouter Firebase à l'aide de la console Firebase (ou, pour les cas d'utilisation avancés, à l'aide de l'API REST Firebase Management ou de la CLI Firebase).
Pourquoi mon projet Firebase ne s'affiche-t-il pas dans la liste de mes projets Firebase ?
Cette FAQ s'applique si vous ne voyez pas votre projet Firebase dans les emplacements suivants:
- Dans la liste des projets que vous consultez dans la console Firebase
- Dans la réponse de l'appel du point de terminaison
projects.list
de l'API REST - Dans la réponse de l'exécution de la commande CLI Firebase :
firebase projects:list
Suivez ces étapes de dépannage:
- Commencez par essayer d'accéder à votre projet en accédant directement à son URL. Utilisez le format suivant:
https://console.firebase.google.com/project/PROJECT_ID/overview
- Si vous ne parvenez pas à accéder au projet ou si des erreurs d'autorisation s'affichent, vérifiez les points suivants :
- Assurez-vous d'être connecté à Firebase avec le même compte Google que celui qui a accès au projet. Vous pouvez vous connecter et vous déconnecter de la console Firebase via l'avatar de votre compte en haut à droite de la console.
- Vérifiez si vous pouvez afficher le projet dans la console Google Cloud.
- Assurez-vous que le libellé
firebase:enabled
est associé à votre projet sur la page Libellés de la console Google Cloud. Firebase et Google Cloud utilisent ce libellé pour lister vos projets Firebase. Si ce libellé ne s'affiche pas, mais que l'API Firebase Management est activée pour votre projet, ajoutez-le manuellement (plus précisément, unKey
defirebase
avec unValue
deenabled
). - Assurez-vous d'être associé à l'un des rôles IAM de base (propriétaire, éditeur, lecteur) ou à un rôle disposant d'autorisations liées à Firebase, par exemple un rôle Firebase prédéfini. Vous pouvez consulter vos rôles sur la page IAM de la console Google Cloud.
- Si votre projet appartient à une organisation Google Cloud, vous devrez peut-être disposer d'autorisations supplémentaires pour le voir listé dans la console Firebase. Contactez la personne qui gère votre organisation Google Cloud pour qu'elle vous attribue le rôle approprié pour afficher le projet, par exemple le rôle Navigateur.
Si aucune des étapes de dépannage ci-dessus ne vous permet de voir votre projet dans une liste de projets Firebase, contactez l'assistance Firebase.
Combien de projets puis-je avoir par compte ?
- Forfait Spark : votre quota de projets est limité à un petit nombre de projets (généralement entre 5 et 10).
- Forfait Blaze : votre quota de projets par compte Cloud Billing augmente considérablement tant que votre compte Cloud Billing est en règle.
La limite de quota de projet est rarement un problème pour la plupart des développeurs, mais si nécessaire, vous pouvez demander à augmenter votre quota de projet.
Notez que la suppression complète d'un projet prend 30 jours et est comptabilisée dans votre quota jusqu'à sa suppression complète.
Combien d'applications Firebase puis-je avoir dans un projet Firebase ?
Un projet Firebase est un conteneur pour les applications Firebase sur Apple, Android et le Web. Firebase limite le nombre total d'applications Firebase dans un projet Firebase à 30.
Au-delà de ce nombre, les performances commencent à se dégrader (en particulier pour Google Analytics) et, à un nombre d'applications plus élevé, certaines fonctionnalités du produit cessent de fonctionner. De plus, si vous utilisez Google Sign-In comme fournisseur d'authentification, un ID client OAuth 2.0 sous-jacent est créé pour chaque application de votre projet. Vous ne pouvez pas créer plus de 30 ID de client dans un même projet.
Vous devez vous assurer que toutes les applications Firebase 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. Par exemple, si vous développez une application blanche, chaque application associée à un libellé indépendant doit disposer de son propre projet Firebase, mais les versions Apple et Android de ce libellé peuvent se trouver dans le même projet. Pour obtenir des conseils plus détaillés, consultez nos bonnes pratiques générales pour configurer des projets Firebase.
Dans de rares cas, si votre projet nécessite plus de 30 applications, vous pouvez demander une augmentation de la limite d'applications. Vous devez disposer de la formule Blaze sur votre projet pour pouvoir effectuer cette requête. Accédez à la console Google Cloud pour envoyer votre demande et la faire évaluer. Pour en savoir plus sur la gestion des quotas, consultez la documentation Google Cloud.
Que se passe-t-il si je tague mon projet comme un environnement de "production" ?
Dans la console Firebase, vous pouvez taguer vos projets Firebase avec leur type d'environnement, en les définissant comme Production ou Non spécifié (hors production).
Le taggage de votre projet en tant que type d'environnement n'a aucun impact sur le fonctionnement ni les fonctionnalités de votre projet Firebase. Toutefois, le taggage peut vous aider, vous et votre équipe, à gérer vos différents projets Firebase pour le cycle de vie de l'application.
Si vous définissez votre projet comme un environnement de production, nous ajoutons un tag Prod de couleur vive au projet dans la console Firebase. Cela vous rappelle que toute modification peut avoir un impact sur vos applications de production associées. À l'avenir, nous pourrions ajouter d'autres fonctionnalités et mesures de protection pour les projets Firebase tagués comme environnements de production.
Pour modifier le type d'environnement de votre projet Firebase, accédez à settings Project settings (Paramètres du projet) > General (Général), puis dans la fiche Your project (Votre projet) sous Environment (Environnement), cliquez sur edit pour modifier le type d'environnement.
Où puis-je trouver l'ID de mon application Firebase ?
Dans la console Firebase, accédez à settings Paramètres du projet. Faites défiler la page jusqu'à la fiche Vos applications, puis cliquez sur l'application Firebase souhaitée pour afficher ses informations, y compris son ID d'application.
Voici quelques exemples de valeurs d'ID d'application:
-
Applications iOS créées avec Firebase:
1:1234567890:ios:321abc456def7890
-
Applications Android créées avec Firebase:
1:1234567890:android:321abc456def7890
-
Applications Web Firebase:
1:1234567890:web:321abc456def7890
Quels sont les prérequis pour associer Google Play / AdMob / Google Ads / BigQuery à mon projet ou application Firebase ?
- Pour associer votre compte Google Play, vous avez besoin des éléments suivants :
- Rôles Firebase: propriétaire ou administrateur Firebase
et - Niveau d'accès Google Play: titulaire ou administrateur du compte
- Rôles Firebase: propriétaire ou administrateur Firebase
- Pour associer votre application AdMob, vous devez être à la fois propriétaire d'un projet Firebase et administrateur AdMob.
- Pour associer votre compte AdWords, vous devez être à la fois propriétaire d'un projet Firebase et administrateur AdWords.
- Pour associer votre projet BigQuery, vous devez être le propriétaire du projet Firebase.
Quelles mentions de logiciel Open Source dois-je inclure dans mon application ?
Sur les plates-formes Apple, le pod Firebase contient un fichier NOTICES qui inclut les entrées pertinentes. Le SDK Android Firebase contient un assistant Activity
permettant d'afficher des informations sur les licences.
Autorisations et accès aux projets Firebase
Comment attribuer un rôle à un membre d'un projet, comme celui de propriétaire ?
Pour gérer le ou les rôles attribués à chaque membre du projet, vous devez être propriétaire du projet Firebase (ou disposer d'un rôle avec l'autorisation resourcemanager.projects.setIamPolicy
).
Voici les endroits où vous pouvez attribuer et gérer des rôles:
- La console Firebase offre un moyen simplifié d'attribuer des rôles aux membres du projet dans l'onglet Utilisateurs et autorisations de settings > Paramètres du projet. Dans la console Firebase, vous pouvez attribuer l'un des rôles de base (Propriétaire, Éditeur, Lecteur), les rôles Firebase Admin/Lecteur ou l'un des rôles prédéfinis par catégorie de produits Firebase.
- La console Google Cloud propose un vaste ensemble d'outils pour attribuer des rôles aux membres du projet sur la page IAM. Dans la console Cloud, vous pouvez également créer et gérer des rôles personnalisés, ainsi que donner aux comptes de service l'accès à votre projet.
Notez que dans la console Google Cloud, les membres du projet sont appelés principals.
Si le propriétaire de votre projet ne peut plus effectuer les tâches de propriétaire (par exemple, s'il a quitté votre entreprise) et que votre projet n'est pas géré via une organisation Google Cloud (voir paragraphe suivant), vous pouvez contacter l'assistance Firebase pour savoir comment demander l'accès au projet Firebase.
Notez que si un projet Firebase fait partie d'une organisation Google Cloud, il n'a pas forcément de propriétaire. Si vous ne trouvez pas de propriétaire pour votre projet Firebase, contactez la personne qui gère votre organisation Google Cloud pour qu'elle en attribue un.
Comment trouver le propriétaire d'un projet Firebase ?
Vous pouvez afficher les membres du projet et leurs rôles aux emplacements suivants:
- Si vous avez accès au projet dans la console Firebase, vous pouvez afficher la liste des membres du projet, y compris les propriétaires, sur la page Utilisateurs et autorisations de la console Firebase.
- Si vous n'avez pas accès au projet dans la console Firebase, vérifiez si vous y avez accès dans la console Google Cloud. Vous pouvez afficher la liste des membres du projet, y compris les propriétaires, sur la page IAM de la console Google Cloud.
Si le propriétaire de votre projet ne peut plus effectuer les tâches de propriétaire (par exemple, s'il a quitté votre entreprise) et que votre projet n'est pas géré via une organisation Google Cloud (voir paragraphe suivant), vous pouvez contacter l'assistance Firebase pour qu'un propriétaire temporaire soit attribué.
Notez que si un projet Firebase fait partie d'une organisation Google Cloud, il n'a pas forcément de propriétaire. À la place, la personne qui gère votre organisation Google Cloud peut effectuer de nombreuses tâches qu'un propriétaire peut effectuer. Toutefois, pour effectuer plusieurs tâches spécifiques au propriétaire (comme attribuer des rôles ou gérer des propriétés Google Analytics), l'administrateur peut devoir s'attribuer le rôle de propriétaire pour effectuer ces tâches. Si vous ne trouvez pas de propriétaire pour votre projet Firebase, contactez la personne qui gère votre organisation Google Cloud pour lui demander d'en désigner un.
Pourquoi ou quand attribuer le rôle de propriétaire à un membre du projet ?
Pour assurer une gestion appropriée d'un projet Firebase, il doit disposer d'un propriétaire. Le propriétaire d'un projet est la personne qui peut effectuer plusieurs actions administratives importantes (comme attribuer des rôles et gérer des propriétés Google Analytics). L'assistance Firebase ne peut répondre qu'aux demandes administratives provenant de propriétaires de projets identifiés.
Une fois que vous avez configuré le ou les propriétaires d'un projet Firebase, il est important de mettre à jour ces attributions.
Notez que si un projet Firebase fait partie d'une organisation Google Cloud, la personne qui gère votre organisation Google Cloud peut effectuer de nombreuses tâches qu'un propriétaire peut effectuer. Toutefois, pour plusieurs tâches spécifiques au propriétaire (comme attribuer des rôles ou gérer des propriétés Google Analytics), l'administrateur peut devoir s'attribuer le rôle de propriétaire pour effectuer ces tâches.
Je ne pense pas avoir de projet Firebase, mais j'ai reçu un e-mail à ce sujet. Comment accéder à ce projet ?
L'e-mail que vous avez reçu doit contenir un lien permettant d'ouvrir votre projet Firebase. Cliquez sur le lien de l'e-mail pour ouvrir le projet dans la console Firebase.
Si vous ne parvenez pas à ouvrir le projet dans le lien, assurez-vous d'être connecté à Firebase avec le même compte Google que celui qui a reçu l'e-mail concernant le projet. Vous pouvez vous connecter et vous déconnecter de la console Firebase via l'avatar de votre compte en haut à droite de la console.
Notez que si vous êtes administrateur d'une organisation Google Cloud, vous pouvez recevoir des notifications concernant les modifications apportées aux projets Firebase de votre organisation. Toutefois, il est possible que vous ne disposiez pas des autorisations suffisantes pour ouvrir le projet Firebase. Dans ce cas, la solution la plus simple consiste à vous attribuer le rôle de propriétaire pour ouvrir le projet et effectuer les actions requises. Découvrez pourquoi et quand attribuer le rôle de propriétaire.
Plates-formes et frameworks
Consultez les pages de dépannage et les questions fréquentes spécifiques à la plate-forme pour obtenir des conseils et des réponses utiles.
Console Firebase
Quels sont les navigateurs compatibles pour accéder à la console Firebase ?
La console Firebase est accessible depuis les versions récentes des navigateurs pour ordinateur les plus courants, tels que Chrome, Firefox, Safari et Edge. Les navigateurs mobiles ne sont pas entièrement compatibles pour le moment.
Je peux charger la console Firebase, mais pourquoi ne trouve-je pas mon projet Firebase ni n'y ai-je pas accès ?
Cette FAQ s'applique si vous rencontrez l'un des problèmes suivants:
- La console Firebase renvoie une page d'erreur indiquant que votre projet n'existe peut-être pas ou que vous n'y avez pas accès.
- La console Firebase n'affiche pas votre projet, même lorsque vous saisissez son ID ou son nom dans le champ de recherche de la console.
Suivez ces étapes de dépannage:
- Commencez par essayer d'accéder à votre projet en accédant directement à son URL. Utilisez le format suivant:
https://console.firebase.google.com/project/PROJECT-ID/overview
- Si vous ne parvenez toujours pas à accéder au projet ou si des erreurs d'autorisation s'affichent, vérifiez les points suivants :
- Assurez-vous d'être connecté à Firebase avec le même compte Google que celui qui a accès au projet. Vous pouvez vous connecter et vous déconnecter de la console Firebase via l'avatar de votre compte en haut à droite de la console.
- Assurez-vous que l'API Firebase Management est activée pour le projet.
- Assurez-vous d'être associé à l'un des rôles IAM de base (propriétaire, éditeur, lecteur) ou à un rôle disposant d'autorisations liées à Firebase, par exemple un rôle Firebase prédéfini. Vous pouvez consulter vos rôles sur la page IAM de la console Google Cloud.
- Si votre projet appartient à une organisation Google Cloud, vous devrez peut-être disposer d'autorisations supplémentaires pour le voir listé dans la console Firebase. Contactez la personne qui gère votre organisation Google Cloud pour qu'elle vous attribue le rôle approprié pour afficher le projet, par exemple le rôle Navigateur.
Si aucune des étapes de dépannage ci-dessus ne vous permet de trouver ou d'accéder à votre projet, contactez l'assistance Firebase.
Pourquoi la console Firebase ne se charge-t-elle pas ?
Cette FAQ s'applique si vous rencontrez l'un des problèmes suivants:
- Le chargement d'une page dans la console Firebase ne se termine jamais.
- Les données d'une page ne sont pas chargées comme prévu.
- Vous recevez des messages d'erreur du navigateur lorsque vous chargez la console Firebase.
Suivez ces étapes de dépannage:
- Vérifiez la ligne Console du tableau de bord d'état Firebase pour détecter d'éventuelles interruptions de service.
- Assurez-vous d'utiliser un navigateur compatible.
- Essayez de charger la console Firebase dans une fenêtre de navigation privée.
- Désactivez toutes les extensions du navigateur.
- Vérifiez que la connexion réseau n'est pas bloquée par un bloqueur de publicité, un antivirus, un proxy, un pare-feu ou un autre logiciel.
- Essayez de charger la console Firebase sur un autre réseau ou sur un autre appareil.
- Si vous utilisez Chrome, recherchez les erreurs dans la console des outils pour les développeurs.
Si aucune des étapes de dépannage ci-dessus ne permet de résoudre le problème, contactez l'assistance Firebase.
Comment la langue de ma console Firebase est-elle déterminée ?
Le paramètre de langue de la console Firebase est basé sur la langue sélectionnée dans les paramètres de votre compte Google.
Pour modifier votre préférence linguistique, consultez Changer de langue.
La console Firebase est disponible dans les langues suivantes:
- Anglais
- Portugais (Brésil)
- Français
- Allemand
- Indonésien
- Japonais
- Coréen
- Russe
- Chinois simplifié
- Espagnol
- Chinois traditionnel
Quels rôles et autorisations sont compatibles avec la console Firebase ?
La console Firebase et la console Google Cloud utilisent les mêmes rôles et autorisations sous-jacents. Pour en savoir plus sur les rôles et les autorisations, consultez la documentation Firebase IAM.
Firebase accepte les rôles fondamentaux (de base) de propriétaire, d'éditeur et de lecteur:
- Un propriétaire de projet peut ajouter d'autres membres au projet, configurer des intégrations (association de projets à des services tels que BigQuery ou Slack) et dispose d'un accès en modification complet au projet.
- Un éditeur de projet dispose d'un accès complet à ce projet.
- Un lecteur de projet ne dispose que d'un accès en lecture pour le projet. Notez que la console Firebase ne masque/désactive actuellement pas les commandes d'édition de l'interface utilisateur des lecteurs de projet, mais ces opérations échoueront pour les membres du projet auxquels le rôle de lecteur est attribué.
Firebase est également compatible avec les éléments suivants:
- Rôles prédéfinis Firebase : rôles spécifiques à Firebase qui permettent un contrôle d'accès plus précis que les rôles de base "Propriétaire", "Éditeur" et "Lecteur".
- Rôles personnalisés : rôles IAM entièrement personnalisés que vous créez pour adapter un ensemble d'autorisations aux exigences spécifiques de votre organisation.
Firebase Local Emulator Suite
Pourquoi les journaux de la suite d'émulateurs affichent-ils une erreur commençant par "Plusieurs projectIds ne sont pas recommandés en mode projet unique" ?
Ce message signifie que la suite d'émulateurs a détecté qu'elle pourrait exécuter un émulateur de produit particulier à l'aide d'ID de projet différents. Cela peut indiquer une mauvaise configuration et peut entraîner des problèmes lorsque les émulateurs tentent de communiquer entre eux et lorsque vous essayez d'interagir avec les émulateurs à partir de votre code. Si les ID de projet ne correspondent pas, il semble souvent que des données sont manquantes, car les données stockées dans les émulateurs sont associées à l'ID de projet, et l'interopérabilité dépend des ID de projet correspondants.
Cela a souvent été source de confusion parmi les développeurs. Par défaut, Local Emulator Suite n'autorise désormais l'exécution qu'avec un seul ID de projet, sauf si vous spécifiez le contraire dans le fichier de configuration firebase.json
. Si un émulateur détecte plusieurs ID de projet, il consigne un avertissement et peut générer une erreur fatale.
Vérifiez que les déclarations de votre ou vos ID de projet ne présentent pas de différences dans les éléments suivants:
-
Projet par défaut défini dans la ligne de commande. Par défaut, l'ID de projet est extrait au démarrage du projet sélectionné avec
firebase init
oufirebase use
. Pour afficher la liste des projets (et voir celui qui est sélectionné), utilisezfirebase projects:list
. -
Tests unitaires. L'ID de projet est souvent spécifié dans les appels aux méthodes
initializeTestEnvironment
ouinitializeTestApp
de la bibliothèque de tests unitaires de règles. Un autre code de test peut être initialisé avecinitializeApp(config)
. -
Option
--project
de la ligne de commande. Transmettre l'option--project
de la CLI Firebase remplace le projet par défaut. Vous devez vous assurer que la valeur de l'indicateur correspond à l'ID du projet dans les tests unitaires et l'initialisation de l'application.
Emplacements spécifiques à la plate-forme à vérifier:
Web | Propriété projectId de votre objet firebaseConfig JavaScript, utilisée dans initializeApp .
|
Android | Propriété project_id dans le fichier de configuration google-services.json .
|
Plates-formes Apple | Propriété PROJECT_ID dans le fichier de configuration GoogleService-Info.plist .
|
Pour désactiver le mode projet unique, mettez à jour firebase.json
avec la clé singleProjectMode
:
{ "firestore": { ... }, "functions": { ... }, "hosting": { ... }, "emulators": { "singleProjectMode": false, "auth": { "port": 9099 }, "functions": { "port": 5001 }, ... } }
Tarifs
Pour obtenir des questions fréquentes sur les tarifs spécifiques à un produit, consultez la section dédiée sur cette page ou dans la documentation du produit.
Quels produits sont payants ? Lesquelles sont sans frais ?
Les produits d'infrastructure payants de Firebase sont Realtime Database, Cloud Storage for Firebase, Cloud Functions, Hosting, Test Lab et l'authentification par téléphone. Nous proposons un niveau sans frais pour toutes ces fonctionnalités.
Firebase propose également de nombreux produits sans frais : Analytics, Cloud Messaging, la création de notifications, Remote Config, App Indexing, Dynamic Links et Crash Reporting. L'utilisation de ces produits n'est soumise qu'aux règles de contrôle du trafic du produit (par exemple, quotas, accès équitable et autres protections de service) dans tous les forfaits, y compris notre forfait Spark sans frais. De plus, toutes les fonctionnalités Authentication au-delà de l'authentification par téléphone sont sans frais.
Firebase propose-t-il des crédits d'essai sans frais pour les produits payants ?
Les services payants Firebase peuvent être utilisés avec l'essai sans frais Google Cloud. Les nouveaux utilisateurs de Google Cloud et de Firebase peuvent bénéficier d'une période d'essai de 90 jours qui inclut 300 $de crédits Cloud Billing sans frais pour découvrir et évaluer les produits et services Google Cloud et Firebase.
Pendant la période d'essai sans frais Google Cloud, vous recevrez un compte Cloud Billing d'essai sans frais. Tout projet Firebase qui utilise ce compte de facturation sera soumis au forfait Blaze pendant la période d'essai sans frais.
Ne vous inquiétez pas, la configuration de ce compte Cloud Billing d'essai sans frais ne nous permet pas de vous prélever des frais. Votre compte n'est pas débité, sauf si vous activez explicitement la facturation en passant à un compte payant.Cloud Billing Vous pouvez passer à un compte payant à tout moment au cours de l'essai. Après cela, vous pourrez toujours utiliser les crédits restants (pendant la période de 90 jours).
Une fois l'essai sans frais terminé, vous devrez soit passer à la formule Spark, soit configurer la formule Blaze dans la console Firebase pour continuer à utiliser votre projet Firebase.
En savoir plus sur l'essai sans frais de Google Cloud
Comment savoir quel forfait me convient le mieux ?
Forfait Spark
Notre forfait Spark est idéal pour développer votre application sans frais. Vous bénéficiez de toutes les fonctionnalités Firebase sans frais (Analytics, le créateur de notifications, Crashlytics, etc.) et d'un accès généreux à nos fonctionnalités d'infrastructure payantes. Toutefois, si vous dépassez les ressources de votre forfait Spark au cours d'un mois calendaire, votre application sera désactivée pour le reste de ce mois. De plus, les fonctionnalités Google Cloud ne sont pas disponibles avec le forfait Spark.
Forfait Blaze
Notre formule Blaze est conçue pour les applications de production. La formule Blaze vous permet également d'étendre votre application avec des fonctionnalités Google Cloud payantes. Vous ne payez que pour les ressources que vous utilisez, ce qui vous permet d'adapter votre consommation à la demande. Nous nous efforçons de proposer des tarifs compétitifs pour notre forfait Blaze par rapport aux fournisseurs de cloud leaders du secteur.
Puis-je passer à un abonnement supérieur, passer à un abonnement inférieur ou résilier mon abonnement à tout moment ?
Oui, vous pouvez passer à un abonnement supérieur, passer à un abonnement inférieur ou résilier votre abonnement à tout moment. Notez que nous n'effectuons pas de remboursements au prorata en cas de rétrogradation ou d'annulation. Cela signifie que si vous passez à un forfait inférieur ou résiliez votre abonnement avant la fin de votre période de facturation, vous devrez quand même payer le reste du mois.
En quoi l'utilisation sans frais du forfait Blaze diffère-t-elle de celle du forfait Spark ?
L'utilisation sans frais sur le forfait Blaze est calculée quotidiennement. Les limites d'utilisation diffèrent également du forfait Spark pour Cloud Functions, l'authentification par téléphone et Test Lab.
Pour Cloud Functions, l'utilisation sans frais du forfait Blaze est calculée au niveau du compte Cloud Billing, et non au niveau du projet. Elle est soumise aux limites suivantes:
- 2 millions d'appels par mois
- 400 Go-secondes/mois
- 200 000 secondes CPU/mois
- 5 Go de sortie réseau par mois
Pour l'authentification par téléphone, l'utilisation sans frais du forfait Blaze est calculée mensuellement.
Pour Test Lab, l'utilisation sans frais du forfait Blaze est limitée comme suit:
- 30 minutes par jour sur un appareil physique
- 60 minutes par jour avec un appareil virtuel
Le quota d'utilisation sans frais est-il réinitialisé lorsque je passe d'un forfait Spark à un forfait Blaze ?
L'utilisation sans frais du forfait Spark est incluse dans le forfait Blaze. L'utilisation sans frais n'est pas réinitialisée lorsque vous passez à un forfait Blaze.
Que se passe-t-il avec mon projet Firebase si j'ajoute ou supprime des comptes de facturation pour ce projet dans la console Google Cloud ?
Si un compte Cloud Billing est ajouté à un projet dans la console Google Cloud, ce projet est automatiquement mis à niveau vers le plan Firebase Blaze s'il est actuellement associé au plan Spark.
En revanche, si un compte Cloud Billing actif existant est supprimé d'un projet dans la console Google Cloud, ce projet sera rétrogradé au forfait Firebase Spark.
Comment surveiller mon utilisation et ma facturation ?
Vous pouvez suivre votre utilisation des ressources de projet dans la console Firebase sur l'un des tableaux de bord suivants:
- Tableau de bord Utilisation et facturation global au niveau du projet
- Authentication Tableau de bord Utilisation (spécifiquement pour les instances d'authentification par téléphone)
- Cloud Firestore Tableau de bord Utilisation
- Cloud Functions Tableau de bord Utilisation
- Cloud Storage Tableau de bord Utilisation
- Hosting Tableau de bord Utilisation
- Realtime Database Tableau de bord Utilisation
Puis-je limiter l'utilisation avec le forfait Blaze ?
Non, vous ne pouvez pas plafonner l'utilisation de votre formule Blaze pour le moment. Nous étudions les options permettant de limiter l'utilisation du forfait Blaze.
Les utilisateurs de Blaze peuvent définir un budget pour leur projet ou leur compte, et recevoir des alertes lorsque leurs dépenses approchent ces limites. Découvrez comment configurer des alertes de budget.
De quel type d'assistance vais-je bénéficier ?
Toutes les applications Firebase, y compris celles qui utilisent des forfaits sans frais, bénéficient d'une assistance par e-mail du personnel Firebase pendant les heures ouvrées de l'heure du Pacifique aux États-Unis. Tous les comptes bénéficient d'une assistance illimitée pour les problèmes liés à la facturation, aux comptes, aux questions techniques (dépannage) et aux rapports d'incidents.
Proposez-vous des remises pour les projets Open Source, les organisations à but non lucratif ou les établissements d'enseignement ?
Notre forfait Spark peut être utilisé par tout type d'individu ou d'organisation, y compris les associations, les établissements d'enseignement et les projets Open Source. Étant donné que ces forfaits incluent déjà des quotas généreux, nous n'offrons aucune remise ni aucun forfait spécial pour les projets Open Source, à but non lucratif ou éducatifs.
Proposez-vous des contrats, des tarifs, une assistance ou un hébergement d'infrastructure dédiés aux entreprises ?
Notre forfait Blaze convient aux entreprises de toutes tailles, et notre contrat de niveau de service répond ou dépasse les normes du secteur pour l'infrastructure cloud. Toutefois, nous ne proposons actuellement pas de contrats d'entreprise, de tarifs ni d'assistance, et nous n'offrons pas d'hébergement d'infrastructure dédié (c'est-à-dire des installations sur site) pour des services comme notre Realtime Database. Nous travaillons sans relâche pour ajouter certaines de ces fonctionnalités.
Proposez-vous des tarifs ponctuels ? Je ne souhaite payer que pour une ou deux fonctionnalités.
Le plan Blaze propose un tarif ponctuel, qui vous permet de ne payer que pour les fonctionnalités que vous utilisez.
Comment les forfaits Firebase payants fonctionnent-ils avec Ads ? Est-il possible de bénéficier d'avoirs publicitaires sans frais avec les forfaits payants ?
Les forfaits Firebase sont distincts de Ads. Il n'existe donc pas de crédits publicitaires sans frais. En tant que développeur Firebase, vous pouvez "associer" votre compte Ads à Firebase pour prendre en charge le suivi des conversions.
Toutes les campagnes publicitaires sont gérées directement dans Ads, et la facturation Ads est gérée depuis la console Ads.
Qu'est-il arrivé au forfait Flame ?
En janvier 2020, l'abonnement Flame (25 $/mois de quota supplémentaire) n'était plus disponible pour les nouvelles inscriptions. Les utilisateurs du forfait existant ont bénéficié d'un délai de grâce pour migrer leurs projets hors du forfait Flame.
En février 2022, les projets restants du forfait Flame ont été rétrogradés au forfait Spark.
Par conséquent,
- Les projets existants des forfaits Spark et Blaze, ainsi que les nouveaux projets, ne peuvent plus passer au forfait Flame ni s'y inscrire.
- Si vous avez déplacé un projet existant du forfait Flame vers un autre forfait, vous ne pouvez pas le faire revenir au forfait Flame.
- Les projets rétrogradés vers le forfait Spark peuvent être mis à niveau vers le forfait Blaze pour reprendre les services payants supplémentaires.
- Les références au forfait Flame ont été supprimées de la documentation.
Vous avez d'autres questions sur l'abandon du forfait Flame ? Consultez les questions fréquentes supplémentaires ci-dessous.
Vous souhaitez en savoir plus sur les autres formules proposées par Firebase ? Consultez la page des tarifs de Firebase. Si vous souhaitez commencer à déplacer des projets existants vers un autre forfait, vous pouvez le faire dans la console Firebase de votre projet.
Questions fréquentes supplémentaires sur l'arrêt du forfait Flame
Je dispose d'un projet, d'un processus ou d'un modèle commercial qui repose sur un coût Firebase fixe. Que dois-je faire ?
Abonnez-vous au forfait Blaze et veillez à définir des alertes de budget.
Puis-je obtenir un accès spécial pour créer des projets avec le forfait Flame ?
Non, Firebase n'offre pas d'accès spécial pour passer au forfait Flame ou s'y inscrire.
J'ai changé le forfait de mon projet Flame pour un autre forfait. Comment puis-je revenir en arrière ?
Il n'est plus possible de passer au forfait Flame. Pour accéder aux services fournis par le forfait Flame, assurez-vous d'utiliser le forfait Blaze et envisagez de configurer des alertes budgétaires pour votre projet.
Mon projet a été automatiquement transféré vers un autre forfait suite à l'abandon du forfait Flame. Que dois-je faire ?
Si votre projet nécessite des quotas supplémentaires au-delà de ceux fournis avec le forfait Spark, vous devez passer au forfait Blaze.
Pourquoi le forfait Flame est-il abandonné ?
Au fil des ans, nous avons constaté une baisse de l'utilisation du forfait Flame, et la plupart des projets qui l'utilisent n'en exploitent pas pleinement la valeur. La maintenance de ce forfait n'est généralement pas rentable, et nous pensons que nous pourrons mieux répondre aux besoins de tous si les ressources sont consacrées à d'autres initiatives Firebase.
Confidentialité
Où puis-je trouver des informations sur la confidentialité et la sécurité dans Firebase ?
Consultez la page Confidentialité et sécurité dans Firebase.
Les SDK Firebase enregistrent-ils des informations d'utilisation/de diagnostic en dehors d'Analytics ?
Oui. Cette fonctionnalité est actuellement réservée à iOS, mais elle pourrait évoluer à l'avenir. Le SDK des plates-formes Apple Firebase inclut le framework FirebaseCoreDiagnostics
par défaut. Firebase utilise ce framework pour collecter des informations sur l'utilisation et les diagnostics des SDK afin d'aider à hiérarchiser les futures améliorations des produits. FirebaseCoreDiagnostics
est facultatif. Si vous ne souhaitez pas envoyer de journaux de diagnostic Firebase, vous pouvez le faire en dissociant la bibliothèque de votre application. Vous pouvez parcourir le code source complet, y compris les valeurs journalisées, sur GitHub.
A/B Testing
A/B Testing:Combien de tests puis-je créer et exécuter ?
Vous pouvez créer jusqu'à 300 tests par projet, dont 24 tests en cours, et les autres en brouillon ou terminés.
A/B Testing:Pourquoi ne puis-je pas afficher mes tests après avoir dissocié et associé à nouveau mon projet à Google Analytics ?
Si vous associez le conteneur à une autre propriété Google Analytics, vous perdrez l'accès aux tests créés précédemment. Pour récupérer l'accès à un test précédent, réassociez votre projet à la propriété Google Analytics qui était associée lors de la création du test.
A/B Testing:Pourquoi le message "Projet non associé à Google Analytics" s'affiche-t-il lorsque je crée un test Remote Config ?
Si vous avez déjà associé Firebase et Google Analytics, mais que le message indiquant que Google Analytics n'est pas associé s'affiche toujours, vérifiez qu'un flux Analytics existe pour toutes les applications de votre projet. Actuellement, toutes les applications d'un projet doivent être associées à un flux Google Analytics pour pouvoir utiliser A/B Testing.
Vous trouverez la liste de tous les flux actifs sur la page Détails de l'intégration de Google Analytics de la console Firebase, accessible depuis settingsParamètres du projet chevron_right Intégrations chevron_right Google Analytics chevron_right Gérer.
Créer un flux Google Analytics pour toute application qui n'en a pas devrait résoudre le problème. Il existe plusieurs façons de créer des flux pour les applications manquantes:
-
Si un ou deux flux Google Analytics ne sont pas associés à vos applications, vous pouvez ajouter un flux Google Analytics de l'une des manières suivantes :
- Supprimez et réajoutez toute application sans flux actif dans la console Firebase.
- Dans la console Google Analytics, sélectionnez Admin, cliquez sur Flux de données, puis sur Ajouter un flux. Ajoutez les informations manquantes sur l'application, puis cliquez sur Enregistrer l'application.
-
Si vous manquez de nombreux flux d'application, la dissociation et l'association de votre propriété Google Analytics est le moyen le plus rapide et le plus efficace de créer les flux d'application manquants :
- Dans settings Project Settings (Paramètres du projet), sélectionnez Integrations (Intégrations).
- Sur la fiche Google Analytics, cliquez sur Gérer pour accéder aux paramètres Firebase et Google Analytics.
- Notez l'ID de propriété Google Analytics et le compte Google Analytics associé.
- Cliquez sur more_vert Plus, puis sélectionnez Dissocier Analytics de ce projet.
-
Consultez l'avertissement qui s'affiche (ne vous inquiétez pas, vous réassocierez la même propriété à l'étape suivante), puis cliquez sur Dissocier Google Analytics.
Une fois la dissociation effectuée, vous êtes redirigé vers la page Intégrations. - Sur la fiche Google Analytics, cliquez sur Activer pour commencer le processus de réassociation.
- Sélectionnez votre compte Analytics dans la liste Sélectionner un compte.
-
À côté de Créer automatiquement une propriété dans ce compte, cliquez sur edit Modifier, puis dans la liste Propriété Analytics qui s'affiche, sélectionnez l'ID de votre propriété.
Une liste de toutes les applications de votre projet s'affiche. Les mises en correspondance de flux existantes pour chaque application sont listées. Un flux sera créé pour les applications qui n'en ont pas. - Cliquez sur Activer Google Analytics pour réassocier la propriété.
- Cliquez sur Terminer.
Si le message d'erreur s'affiche toujours après avoir suivi ces étapes, contactez l'assistance Firebase.
AdMob
AdMob: Puis-je associer mes applications Windows à Firebase ?
Non, les applications Windows ne sont pas compatibles pour le moment.
AdMob:Pourquoi ne puis-je pas associer mon application à AdMob depuis la console Firebase ?
Vous pouvez associer une application AdMob à une application Firebase via la console AdMob. En savoir plus
AdMob:Quelles autorisations ou quel accès dois-je avoir pour associer une application Firebase à une application AdMob ?
Pour effectuer cette association, vous devez disposer des droits d'accès suivants:
- AdMob: vous devez être administrateur AdMob.
- Firebase: vous devez disposer de l'autorisation
firebase.links.create
, qui est incluse dans les rôles Propriétaire et Administrateur Firebase. - Google Analytics: vous devez disposer des autorisations "Modifier" ou "Gérer les utilisateurs" pour la propriété associée au projet Firebase. En savoir plus
AdMob:Plusieurs utilisateurs d'un même compte AdMob peuvent-ils associer des applications AdMob et des applications Firebase ?
Pour les comptes AdMob multi-utilisateurs, l'utilisateur ayant créé la première association à Firebase et accepté les conditions d'utilisation Firebase est le seul à pouvoir créer des associations entre les applications AdMob et Firebase.
AdMob:Pour utiliser AdMob, quels SDK dois-je utiliser ?
Pour utiliser AdMob, utilisez toujours le SDK Google Mobile Ads, comme décrit dans cette FAQ. En outre, si vous souhaitez collecter des métriques utilisateur pour AdMob, vous pouvez inclure le SDK Firebase pour Google Analytics dans votre application.
- Pour les projets iOS:
Importez le SDK Google Mobile Ads en suivant les instructions de la documentation iOS AdMob. - Pour les projets Android:
Ajoutez la dépendance du SDK Google Mobile Ads à votre fichierbuild.gradle
:
implementation 'com.google.android.gms:play-services-ads:23.6.0'
- Pour les projets C++ et les projets Unity: suivez les instructions de la documentation correspondante.
Analytics
Analytics: Pourquoi Google Analytics est-il recommandé pour utiliser les produits Firebase ?
Google Analytics est une solution d'analyse sans frais et illimitée qui fonctionne avec les fonctionnalités Firebase pour fournir des insights efficaces. Il vous permet d'afficher les journaux des événements dans Crashlytics, l'efficacité des notifications dans FCM, les performances des liens profonds pour Dynamic Links et les données sur les achats via l'application à partir de Google Play. Il permet le ciblage d'audience avancé dans Remote Config, la personnalisation Remote Config, etc.
Google Analytics agit comme une couche d'intelligence dans la console Firebase pour vous fournir des insights plus exploitables sur la façon de développer une application de haute qualité, de développer votre base d'utilisateurs et de générer plus de revenus.
Pour commencer, consultez la documentation.
Analytics:Comment contrôler le partage de mes données Analytics avec le reste de Firebase ?
Par défaut, vos données Google Analytics sont utilisées pour améliorer d'autres fonctionnalités Firebase et Google. Vous pouvez contrôler le partage des données Google Analytics dans les paramètres de votre projet à tout moment. En savoir plus sur les paramètres de partage des données
Analytics:Comment mettre à jour les paramètres de ma propriété Analytics ?
Sur la page Administration de votre propriété Google Analytics, vous pouvez mettre à jour les paramètres de votre propriété, par exemple:
- Paramètres de partage des données
- Paramètres de conservation des données
- Paramètres liés au fuseau horaire et à la devise
Pour modifier les paramètres de votre propriété, procédez comme suit:
- Dans la console Firebase, accédez à settings > Paramètres du projet.
- Accédez à l'onglet Intégrations, puis dans la fiche Google Analytics, cliquez sur Gérer ou Afficher l'association.
- Cliquez sur le lien de votre compte Google Analytics pour ouvrir les paramètres du compte et de la propriété.
Analytics dans mon application iOS:puis-je installer Analytics sans les fonctionnalités d'attribution des annonces et de collecte de l'IDFA ?
Oui. Pour en savoir plus, consultez la page Configurer la collecte et l'utilisation des données.
Analytics: Qu'est-ce qui a changé dans la section Google Analytics avec la mise à jour d'octobre 2021 ?
Vous trouverez un résumé de ces modifications dans l'article du Centre d'aide Firebase Nouvelle fonctionnalité Google Analytics 4 dans Google Analytics pour Firebase.
Analytics:Pourquoi ne vois-je aucune donnée Analytics dans la console Firebase après avoir dissocié Firebase de Google Analytics ?
Les données Analytics se trouvent dans la propriété Google Analytics, et non dans le projet Firebase. Si vous supprimez ou dissociez la propriété, Firebase n'aura pas accès aux données Analytics, et un tableau de bord Analytics vide s'affichera dans la console Firebase. Notez que, comme les données résident toujours dans la propriété précédemment associée, vous pouvez toujours associer à nouveau la propriété à Firebase et afficher les données Analytics dans la console Firebase.
Si vous associez un tout nouveau compte Google Analytics (et donc une nouvelle propriété Google Analytics) à votre projet Firebase, le tableau de bord Analytics de la console Firebase sera vide. Toutefois, si votre propriété précédemment associée existe toujours, vous pouvez déplacer les données existantes de l'ancienne propriété vers la nouvelle.
Analytics:Si ma propriété Analytics et ses données ont été supprimées, existe-t-il un moyen de les récupérer ?
Non. Si votre propriété a été supprimée, vous ne pouvez pas la restaurer ni récupérer les données Analytics précédemment collectées et stockées dans cette propriété.
Si vous souhaitez recommencer à utiliser Google Analytics, vous pouvez associer une nouvelle propriété ou une propriété existante à votre projet Firebase. Vous pouvez effectuer cette association dans la console Firebase ou dans l'UI Google Analytics. Découvrez comment associer une propriété Google Analytics à votre projet Firebase.
Analytics:Si ma propriété Analytics a été supprimée, puis-je associer une nouvelle propriété Google Analytics à mon projet Firebase et recommencer à utiliser Analytics ?
Si vous souhaitez recommencer à utiliser Google Analytics, vous pouvez associer une nouvelle propriété ou une propriété existante à votre projet Firebase. Vous pouvez effectuer cette association dans la console Firebase ou dans l'UI Google Analytics. Découvrez comment associer une propriété Google Analytics à votre projet Firebase.
Notez que, comme toutes les données Analytics sont stockées dans la propriété (et non dans le projet Firebase), les données Analytics collectées précédemment ne peuvent pas être récupérées.
Analytics: Quelle sera l'incidence de la suppression de ma propriété Analytics sur les produits Firebase ou les produits Google intégrés ?
Plusieurs produits Firebase s'appuient sur l'intégration de Google Analytics. Si votre propriété Analytics et ses données sont supprimées, voici ce qui se passe si vous utilisez les produits suivants:
- Crashlytics : vous ne pouvez plus voir les utilisateurs sans plantage, les journaux de fil d'Ariane et/ou les alertes de vitesse.
- Cloud Messaging et In-App Messaging : vous ne pouvez plus utiliser le ciblage, les métriques de campagne, la segmentation d'audience et les libellés d'analyse.
- Remote Config : vous ne pouvez plus utiliser de configurations ciblées ni de personnalisation.
- A/B Testing : vous ne pouvez plus utiliser A/B Testing, car la mesure du test est fournie par Google Analytics.
- Dynamic Links : toute fonctionnalité qui s'appuie sur des données Google Analytics sera interrompue.
En outre, les intégrations suivantes seront affectées:
- Vous ne pouvez plus exporter de données Analytics vers BigQuery.
- Vous ne pouvez plus utiliser les intégrations Google Ads ni les intégrations Google AdMob.
Analytics:Comment segmenter les utilisateurs qui n'ont pas rempli un critère ?
Vous pouvez recadrer le problème en "ciblant négativement" ces utilisateurs. Par exemple, reformulez le problème en "Ne pas diffuser d'annonces auprès des personnes qui ont acheté quelque chose", puis créez une audience de ces utilisateurs à cibler.
Analytics:Les audiences et/ou les événements définis dans l'interface Google Analytics sont-ils également disponibles dans la console Firebase ?
Vos audiences et vos propriétés utilisateur seront synchronisées. Pour certaines fonctionnalités, comme la segmentation et les entonnoirs fermés, vous devez utiliser l'interface Google Analytics. Vous pouvez accéder directement à l'interface Google Analytics via des liens profonds depuis la console Firebase.
Toutes les modifications que vous effectuez à partir de la console Firebase peuvent également être effectuées dans Google Analytics. Ces modifications seront répercutées dans Firebase.
Authentication
Firebase Authentication:Quelles régions sont compatibles avec l'authentification par téléphone ?
Firebase Authentication est compatible avec la validation des numéros de téléphone dans le monde entier, mais tous les réseaux ne transmettent pas de manière fiable les messages de validation. Les régions suivantes enregistrent de bons taux de distribution et devraient fonctionner correctement pour l'authentification par téléphone. Dans certains cas, certains transporteurs ne sont pas disponibles dans une région en raison de mauvais taux de livraison.
Région | Code |
---|---|
ANNONCE | Andorre |
AE | Émirats arabes unis |
AF | Afghanistan |
AG | Antigua-et-Barbuda |
AL | Albanie |
AM | Arménie |
AO | Angola |
RA | Argentine |
AS | Samoa américaines |
AT | Autriche |
UA | Australie |
AW | Aruba |
AZ | Azerbaïdjan |
BA | Bosnie-Herzégovine |
BB | Barbade |
BD | Bangladesh |
BE | Belgique |
BF | Burkina Faso |
BG | Bulgarie |
BJ | Bénin |
BM | Bermudes |
BN | Brunei Darussalam |
BO | Bolivie |
Brésil | Brésil |
BS | Bahamas |
BT | Bhoutan |
BW | Botswana |
BY | Biélorussie |
BZ | Belize |
CA | Canada |
CD | Congo (Kinshasa) |
CF | République centrafricaine |
CG | Congo (Brazzaville) |
CH | Suisse |
CI | Côte d'Ivoire |
CK | Cook (Îles) |
LM | Chili |
CM | Cameroun |
CO | Colombie |
CR | Costa Rica |
CV | Cap-Vert |
CW | Curaçao |
CY | Chypre |
CZ | République tchèque |
DE | Allemagne |
DJ | Djibouti |
Danemark | Danemark |
DM | Dominique |
DO | République dominicaine |
DZ | Algérie |
EC | Équateur |
EG | Égypte |
ES | Espagne |
PR | Éthiopie |
VEN | Finlande |
FJ | Fidji |
FK | Falkland (Îles) |
FM | Micronésie, États fédérés de |
FO | Îles Féroé |
FR | France |
DG | Gabon |
Go | Royaume-Uni |
DB | Grenade |
GE | Géorgie |
GF | Guyane |
GG | Guernesey |
GH | Ghana |
GI | Gibraltar |
GL | Groenland |
Directeur général | Gambie |
GP | Guadeloupe |
GQ | Guinée équatoriale |
RB | Grèce |
GT | Guatemala |
GY | Guyana |
HK | Hong Kong, RAS de Chine |
HN | Honduras |
RH | Croatie |
MT | Haïti |
UP | Hongrie |
ID | Indonésie |
IE | Irlande |
IL | Israël |
IM | Man (Île) |
IN | Inde |
IQ | Irak |
IT | Italie |
JE | Jersey |
JM | Jamaïque |
JO | Jordanie |
Japon | Japon |
KE | Kenya |
KG | Kirghizstan |
KH | Cambodge |
KM | Comores |
KN | Saint-Christophe-et-Niévès |
KR | Corée du Sud |
KW | Koweït |
KY | Îles Caïmans |
KZ | Kazakhstan |
LA | République démocratique populaire lao |
LB | Liban |
LC | Sainte-Lucie |
LI | Liechtenstein |
LK | Sri Lanka |
LS | Lesotho |
LT | Lituanie |
LU | Luxembourg |
LV | Lettonie |
LY | Libye |
MA | Maroc |
MD | Moldavie |
ME | Monténégro |
MF | Saint-Martin (partie française) |
MG | Madagascar |
MK | Macédoine, République de |
Assez satisfaits | Myanmar |
MN | Mongolie |
MO | Macao, RAS de Chine |
MS | Montserrat |
MT | Malte |
MU | Maurice (Île) |
MW | Malawi |
MX | Mexique |
MY | Malaisie |
MZ | Mozambique |
N/A | Namibie |
NC | Nouvelle-Calédonie |
NE | Niger |
NF | Norfolk (Île) |
NG | Nigeria |
NI | Nicaragua |
NL | Pays-Bas |
NON | Norvège |
NP | Népal |
NZ | Nouvelle-Zélande |
OM | Oman |
PC | Panama |
PE | Pérou |
PG | Papouasie - Nouvelle-Guinée |
PH | Philippines |
PK | Pakistan |
PL | Pologne |
PM | Saint-Pierre-et-Miquelon |
PR | Porto Rico |
PS | Territoires palestiniens |
PT | Portugal |
PY | Paraguay |
QA | Qatar |
RE | Réunion |
RO | Roumanie |
RS | Serbie |
RU | Fédération de Russie |
RW | Rwanda |
SA | Arabie saoudite |
SC | Seychelles |
Suède | Suède |
SG | Singapour |
TB | Sainte-Hélène |
SI | Slovénie |
SK | Slovaquie |
SL | Sierra Leone |
SN | Sénégal |
SR | Suriname |
ST | Sao Tomé-et-Principe |
SV | El Salvador |
SZ | Swaziland |
TC | Îles Turks-et-Caïcos |
TG | Togo |
TH | Thaïlande |
TL | Timor-Oriental |
TM | Turkménistan |
TO | Tonga |
TR | Turquie |
TT | Trinité-et-Tobago |
TW | Taïwan, République de Chine |
TZ | Tanzanie, République unie de |
UA | Ukraine |
UG | Ouganda |
États-Unis | États-Unis d'Amérique |
UY | Uruguay |
UZ | Ouzbékistan |
CV | Saint-Vincent-et-les-Grenadines |
VE | Venezuela (République bolivarienne) |
VG | Vierges britanniques (Îles) |
VI | Îles Vierges américaines |
VN | Viêt Nam |
WS | Samoa |
YE | Yémen |
YT | Mayotte |
ZA | Afrique du Sud |
ZM | Zambie |
ZW | Zimbabwe |
Firebase Authentication:Qu'est-il arrivé aux SMS sans frais du forfait Spark ?
À partir de septembre 2024, pour améliorer la sécurité et la qualité de service de l'authentification par téléphone, les projets Firebase doivent être associés à un compte Cloud Billing pour activer et utiliser le service SMS.
Firebase Authentication:Comment puis-je éviter les utilisations abusives des SMS lorsque j'utilise l'authentification par téléphone ?
Pour protéger votre projet contre l'inflation artificielle du trafic SMS et l'utilisation abusive des API, procédez comme suit:
Envisager de définir une règle pour les SMS par région
Affichez votre utilisation des SMS par région.
Recherchez les régions où le nombre de SMS envoyés est très élevé et celui des SMS validés très faible (ou nul). Le ratio de validation/envoi correspond à votre taux de réussite. Les taux de réussite acceptables se situent généralement entre 70 et 85 %, car le SMS n'est pas un protocole de diffusion garanti, et certaines régions peuvent faire l'objet d'abus. Un taux de réussite inférieur à 50% implique de nombreux SMS envoyés, mais peu de connexions réussies, ce qui est un indicateur courant de présence de pirates informatiques et de gonflement du trafic SMS.
Utilisez la règle de région pour les SMS pour refuser les régions où les SMS ont un faible taux de réussite ou n'autoriser que certaines régions si votre application n'est destinée qu'à certains marchés.
Limiter vos domaines d'authentification autorisés
Utilisez le tableau de bord des paramètres d'authentification pour gérer les domaines autorisés. Le domaine localhost
est ajouté par défaut aux domaines d'authentification approuvés pour simplifier le développement. Envisagez de supprimer localhost
des domaines autorisés de votre projet de production pour empêcher les acteurs malveillants d'exécuter du code sur leur afin d'accéder à votre projet de production.localhost
Activer et appliquer App Check
Activez App Check pour protéger votre projet contre toute utilisation abusive des API en attestant que les requêtes ne proviennent que d'applications associées à votre projet.
Pour utiliser App Check avec Firebase Authentication, vous devez passer à Firebase Authentication with Identity Platform.
N'oubliez pas que vous devez appliquer App Check pour l'authentification dans la console Firebase (pensez à surveiller le trafic avant de l'appliquer). Vérifiez également la liste des sites approuvés par reCAPTCHA Enterprise pour vous assurer qu'elle ne contient que vos sites de production et que la liste des applications enregistrées dans votre projet dans App Check est exacte.
Notez qu'App Check aide à se protéger contre les attaques automatisées en affirmant que l'appel provient de l'une de vos applications enregistrées. Cela n'empêche pas les utilisateurs d'utiliser votre application de manière involontaire (par exemple, en commençant et en ne terminant jamais les flux de connexion pour générer des SMS envoyés).
Firebase Authentication:L'authentification par téléphone est-elle compatible avec le transfert de numéros de téléphone vers un nouvel opérateur ?
Pour le moment, les numéros transférés entre opérateurs ne peuvent pas être distribués aux utilisateurs finaux. Il n'existe aucune solution de contournement, et Firebase travaille à la résolution de ce problème.
Firebase Authentication:Dans mon application Android, pourquoi l'erreur suivante s'affiche-t-elle:
Google sign in failed
?
Google sign in failed
Suivez la procédure de dépannage de cette FAQ si l'erreur suivante s'affiche:
GoogleFragment: Google sign in failed
com.google.android.gms.common.api.ApiException: 13: Unable to get token.
at
com.google.android.gms.internal.auth-api.zbay.getSignInCredentialFromIntent(com.google.android.gms:play-services-auth@@20.3.0:6)
Assurez-vous que la connexion Google est correctement activée en tant que fournisseur d'authentification:
Dans la console Firebase, ouvrez la section Authentication.
Dans l'onglet Méthode de connexion, désactivez, puis réactivez la méthode de connexion Google (même si elle est déjà activée):
Ouvrez la méthode de connexion Google, désactivez-la, puis cliquez sur Enregistrer.
Ouvrez à nouveau la méthode de connexion Google, activez-la, puis cliquez sur Enregistrer.
Assurez-vous que votre application utilise son fichier de configuration Firebase à jour (
google-services.json
).
Obtenez le fichier de configuration de votre application.Vérifiez si l'erreur persiste. Si c'est le cas, passez à l'étape suivante.
Assurez-vous que les clients OAuth 2.0 sous-jacents requis sont présents.
Sur la page Identifiants de la console Google Cloud, consultez la section ID client OAuth 2.0.
Si les clients OAuth 2.0 ne sont pas présents (et que vous avez suivi toutes les étapes de dépannage ci-dessus), contactez l'assistance.
Firebase Authentication:Dans mon application pour la plate-forme Apple, pourquoi l'erreur suivante s'affiche-t-elle:
You must specify <clientID> in <GIDConfiguration>
?
You must specify <clientID> in <GIDConfiguration>
Suivez la procédure de dépannage de cette FAQ si l'erreur suivante s'affiche:
You must specify |clientID| in |GIDConfiguration|
Assurez-vous que la connexion Google est correctement activée en tant que fournisseur d'authentification:
Dans la console Firebase, ouvrez la section Authentication.
Dans l'onglet Méthode de connexion, désactivez, puis réactivez la méthode de connexion Google (même si elle est déjà activée):
Ouvrez la méthode de connexion Google, désactivez-la, puis cliquez sur Enregistrer.
Ouvrez à nouveau la méthode de connexion Google, activez-la, puis cliquez sur Enregistrer.
Assurez-vous que votre application utilise son fichier de configuration Firebase à jour (
GoogleService-Info.plist
).
Obtenez le fichier de configuration de votre application.Vérifiez si l'erreur persiste. Si c'est le cas, passez à l'étape suivante.
Assurez-vous que les clients OAuth 2.0 sous-jacents requis sont présents.
Sur la page Identifiants de la console Google Cloud, consultez la section ID client OAuth 2.0.
Si les clients OAuth 2.0 ne sont pas présents (et que vous avez suivi toutes les étapes de dépannage ci-dessus), contactez l'assistance.
Firebase Authentication:Dans mon application Web, pourquoi l'erreur suivante s'affiche-t-elle:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
?
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Suivez la procédure de dépannage de cette FAQ si l'erreur suivante s'affiche:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Assurez-vous que la connexion Google est correctement activée en tant que fournisseur d'authentification:
Dans la console Firebase, ouvrez la section Authentication.
Dans l'onglet Méthode de connexion, désactivez, puis réactivez la méthode de connexion Google (même si elle est déjà activée):
Ouvrez la méthode de connexion Google, désactivez-la, puis cliquez sur Enregistrer.
Ouvrez à nouveau la méthode de connexion Google, activez-la, puis cliquez sur Enregistrer.
Dans la configuration du fournisseur de connexion Google de la section Authentication, assurez-vous également que l'ID client et le secret OAuth correspondent au client Web affiché sur la page Credentials (Identifiants) de la console Google Cloud (section OAuth 2.0 Client IDs [ID client OAuth 2.0]).
Firebase Authentication:Dans mon application Web, pourquoi la connexion avec redirection échoue-t-elle avec l'erreur suivante:
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
?
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
Suivez la procédure de dépannage de cette FAQ si l'erreur suivante s'affiche:
This domain YOUR_REDIRECT_DOMAIN is not authorized to run this operation.
Cette erreur est probablement due au fait que votre domaine de redirection n'est pas listé comme domaine autorisé pour Firebase Authentication ou que la clé API que vous utilisez avec le service Firebase Authentication n'est pas valide.
Commencez par vous assurer que YOUR_REDIRECT_DOMAIN figure dans la liste des domaines autorisés pour votre projet Firebase. Si votre domaine de redirection y figure déjà, poursuivez la procédure de dépannage pour une clé API non valide.
Par défaut, le SDK JavaScript Firebase Authentication s'appuie sur la clé API de votre projet Firebase, qui est associée à l'Browser key
. Il utilise cette clé pour vérifier qu'une URL de redirection de connexion est valide selon la liste des domaines autorisés.
Authentication obtient cette clé API en fonction de la manière dont vous accédez au SDK Authentication:
Si vous utilisez les assistants d'authentification fournis par Hosting pour connecter les utilisateurs avec le SDK JavaScript Authentication, Firebase obtient automatiquement votre clé API avec le reste de votre configuration Firebase chaque fois que vous déployez sur Firebase Hosting. Assurez-vous que le
authDomain
de votrefirebaseConfig
d'application Web est correctement configuré pour utiliser l'un des domaines de ce site Hosting. Pour le vérifier, accédez àhttps://authDomain__/firebase/init.json
et vérifiez queprojectId
correspond à celui defirebaseConfig
.Si vous hébergez vous-même le code de connexion, vous pouvez utiliser un fichier
__/firebase/init.json
pour fournir la configuration Firebase à l'aide de l'assistant de redirection du SDK JS Authentication auto-hébergé. La clé API et leprojectId
listés dans ce fichier de configuration doivent correspondre à votrefirebaseConfig
d'application Web.
Vérifiez que cette clé API n'a pas été supprimée: accédez au panneau API et services > Identifiants de la console Google Cloud, où toutes les clés API de votre projet sont listées.
Si l'
Browser key
n'a pas été supprimé, vérifiez les points suivants:Assurez-vous que l'API Firebase Authentication figure dans la liste des API autorisées pour lesquelles la clé peut accéder (en savoir plus sur les restrictions d'API pour les clés API).
Si vous hébergez vous-même le code de connexion, assurez-vous que la clé API indiquée dans votre fichier
__/firebase/init.json
correspond à celle de la console Cloud. Corrigez la clé dans le fichier, si nécessaire, puis redéployez votre application.Si le
Browser key
a été supprimé, vous pouvez demander à Firebase de générer une nouvelle clé API: dans la console Firebase, accédez à settings > Paramètres du projet, puis dans la section Vos applications, cliquez sur votre application Web. Cette action crée automatiquement une clé API que vous pouvez consulter dans la section Configuration et configuration du SDK de votre application Web.
Notez que dans la console Cloud, cette nouvelle clé API ne s'appellera pas
Browser key
. Elle portera le même nom que le surnom de votre application Web Firebase. Si vous décidez d'ajouter des restrictions d'API à cette nouvelle clé API, assurez-vous que l'API Firebase Authentication figure dans la liste des API autorisées.Une fois votre nouvelle clé API créée, suivez les étapes ci-dessous qui s'appliquent à votre cas:
Si vous utilisez des URL Hosting réservées, redéployez votre application dans Firebase afin qu'elle puisse obtenir automatiquement la nouvelle clé API avec le reste de votre configuration Firebase.
Si vous hébergez vous-même le code de connexion, copiez la nouvelle clé API et ajoutez-la à votre fichier
__/firebase/init.json
, puis redéployez votre application.
Firebase Authentication:Comment créer manuellement un client Web OAuth ?
Ouvrez la page Identifiants de la console Google Cloud.
En haut de la page, sélectionnez Créer des identifiants > ID client OAuth.
Si vous êtes invité à configurer votre écran de consentement, suivez les instructions à l'écran, puis suivez les étapes suivantes de cette FAQ.
Créez le client Web OAuth:
Dans Type d'application, sélectionnez Application Web.
Pour Origines JavaScript autorisées, ajoutez les éléments suivants:
http://localhost
http://localhost:5000
https://PROJECT_ID.firebaseapp.com
https://PROJECT_ID.web.app
Dans le champ URI de redirection autorisés, ajoutez les éléments suivants:
https://PROJECT_ID.firebaseapp.com/__/auth/handler
https://PROJECT_ID.web.app/__/auth/handler
Enregistrez le client OAuth.
Copiez le nouvel ID client et le nouveau code secret OAuth dans le presse-papiers.
Dans la console Firebase, ouvrez la section Authentication.
Dans l'onglet Sign-in method (Mode de connexion), ouvrez le fournisseur de connexion Google, puis collez l'ID client et le secret du serveur Web que vous venez de créer et de copier à partir de la console Google Cloud. Cliquez sur Enregistrer.
Firebase Authentication:Comment %APP_NAME%
est-il déterminé pour le modèle d'e-mail de confirmation pouvant être envoyé à un utilisateur lorsqu'il s'inscrit à l'aide d'une adresse e-mail et d'un mot de passe ?
Avant décembre 2022, le %APP_NAME%
du modèle d'e-mail était renseigné avec le nom de la marque OAuth provisionné automatiquement chaque fois qu'une application Android était enregistrée dans le projet Firebase. Étant donné que la marque OAuth n'est provisionnée que lorsque Google Sign-In est activé, la procédure suivante décrit comment %APP_NAME%
est déterminé:
Si le nom de la marque OAuth est disponible,
%APP_NAME%
dans le modèle d'e-mail correspond au nom de la marque OAuth (comme avant décembre 2022).Si le nom de la marque OAuth n'est pas disponible, voici comment le
%APP_NAME%
du modèle d'e-mail est déterminé:Pour les applications Web,
%APP_NAME%
correspond au nom de site Firebase Hosting par défaut (valeur précédant.firebaseapp.com
et.web.app
, généralement l'ID de projet Firebase).Pour les applications mobiles :
Si le nom du package Android ou l'ID du bundle iOS est présent dans la requête,
%APP_NAME%
correspond au nom de l'application utilisé sur le Play Store ou l'App Store (respectivement).Sinon,
%APP_NAME%
correspond au nom de site Firebase Hosting par défaut (valeur précédant.firebaseapp.com
et.web.app
, généralement l'ID de projet Firebase).
Notez que si la recherche du nom de site Firebase Hosting par défaut échoue, la solution de remplacement finale consiste à utiliser l'ID de projet Firebase comme
%APP_NAME%
.
Cloud Functions
Compatibilité de l'environnement d'exécution Cloud Functions
Comment passer à la dernière version compatible de Node.js ?
- Assurez-vous d'utiliser le forfait Blaze.
- Assurez-vous d'utiliser la dernière version de la CLI Firebase.
- Mettez à jour le champ
engines
dans lespackage.json
de vos fonctions. - Vous pouvez également tester vos modifications à l'aide de Firebase Local Emulator Suite.
- Redéployez toutes les fonctions.
Comment puis-je m'assurer que j'ai déployé mes fonctions dans un environnement d'exécution Node.js spécifique ?
Dans la console Firebase, accédez au tableau de bord des fonctions, sélectionnez une fonction, puis vérifiez la langue de la fonction sous Informations supplémentaires.
J'utilise les extensions Firebase. Les mises à jour de l'environnement d'exécution de Cloud Functions auront-elles un impact sur moi ?
Oui. Étant donné que les extensions utilisent Cloud Functions, l'environnement d'exécution de vos extensions devra être mis à jour en même temps que Cloud Functions.
Nous vous recommandons de passer régulièrement à la dernière version de chaque extension installée dans votre projet. Vous pouvez mettre à niveau les extensions de vos projets via la console Firebase ou la CLI Firebase.
Tarifs de Cloud Functions
Pourquoi ai-je besoin d'un compte de facturation pour utiliser Cloud Functions for Firebase ?
Cloud Functions for Firebase s'appuie sur certains services Google payants. Les nouveaux déploiements de fonctions avec la CLI Firebase 11.2.0 ou version ultérieure reposent sur Cloud Build et Artifact Registry. Les déploiements vers des versions antérieures utilisent Cloud Build de la même manière, mais s'appuient sur Container Registry et Cloud Storage pour le stockage au lieu de Artifact Registry. L'utilisation de ces services sera facturée en plus des tarifs existants.
Espace de stockage pour la version 11.2.0 de la CLI Firebase et les versions ultérieures
Artifact Registry fournit les conteneurs dans lesquels les fonctions s'exécutent. Artifact Registry fournit les 500 Mo premiers sans frais. Vos premiers déploiements de fonctions peuvent donc ne pas entraîner de frais. Au-delà de ce seuil, chaque Go de stockage supplémentaire est facturé 0,10 $par mois.
Espace de stockage pour la CLI Firebase 11.1.x et les versions antérieures
Pour les fonctions déployées dans des versions antérieures, Container Registry fournit les conteneurs dans lesquels les fonctions s'exécutent. Vous serez facturé pour chaque conteneur requis pour déployer une fonction. Vous remarquerez peut-être de petits frais pour chaque conteneur stocké.Par exemple, 1 Go de stockage est facturé à 0,026 $par mois.
Pour en savoir plus sur les changements qui pourraient s'appliquer à votre facture, veuillez consulter les informations suivantes :
- Tarifs Cloud Functions: le niveau sans frais existant reste inchangé.
- Tarification Cloud Build:Cloud Build propose un niveau sans frais.
- Tarification Artifact Registry
- Tarification Container Registry
Cloud Functions for Firebase est-il toujours disponible sans frais ?
Oui. Avec le forfait Blaze, Cloud Functions propose un niveau sans frais pour les invocations, le temps de calcul et le trafic Internet. Les 2 000 000 premiers appels, 400 000 Go/s, 200 000 CPU/s et 5 Go de trafic de sortie Internet sont fournis sans frais chaque mois. Seules les utilisations dépassant ces seuils vous seront facturées.
Après les 500 Mo de stockage sans frais, chaque opération de déploiement entraîne des frais à petite échelle pour l'espace de stockage utilisé pour le conteneur de la fonction. Si votre processus de développement dépend du déploiement de fonctions à des fins de test, vous pouvez réduire davantage les coûts en utilisant Firebase Local Emulator Suite pendant le développement.
Consultez les formules Firebase et les exemples de scénarios de tarification Cloud Functions.
Firebase prévoit-il d'augmenter les quotas et les limites pour Cloud Functions for Firebase ?
Non. Nous ne prévoyons pas de modifier les quotas, sauf pour supprimer la limite de temps de compilation maximale. Au lieu de recevoir des erreurs ou des avertissements lorsque le quota quotidien de compilation de 120 minutes est atteint, vous serez facturé conformément aux conditions du forfait Blaze. Consultez la page Quotas et limites pour en savoir plus.
Puis-je obtenir le crédit de Google Cloud 300 $ ?
Oui, vous pouvez créer un compte Cloud Billing dans la console Google Cloud pour obtenir le crédit de 300 $, puis associer ce compte Cloud Billing à un projet Firebase.
Pour en savoir plus sur le crédit Google Cloud, cliquez ici.
Notez que si vous le faites, vous devez ensuite configurer le forfait Blaze dans la console Firebase pour que votre projet continue de fonctionner une fois que le crédit de 300 $sera épuisé.
Je souhaite suivre un atelier de programmation pour en savoir plus sur Firebase. Pouvez-vous m\'indiquer un compte de facturation temporaire ?
Non, désolé. Vous pouvez utiliser l'émulateur Firebase pour le développement sans disposer d'un compte Cloud Billing. Vous pouvez également demander un essai sans frais de Google Cloud. Si vous ne parvenez toujours pas à payer votre facture en raison de ce changement, contactez l'assistance Firebase.
J'ai peur de me retrouver avec une facture énorme.
Vous pouvez configurer des alertes budgétaires dans la console Google Cloud pour mieux contrôler les coûts. Vous pouvez également définir des limites sur le nombre d'instances facturées créées pour chacune de vos fonctions. Pour vous faire une idée des coûts pour des scénarios courants, consultez les exemples de tarifs de Cloud Functions.
Comment consulter mes frais de facturation actuels ?
Affichez le tableau de bord Utilisation et facturation dans la console Firebase.
J'utilise les extensions Firebase. Ai-je besoin d'un compte de facturation ?
Oui. Étant donné que les extensions utilisent Cloud Functions, elles sont soumises aux mêmes frais que les autres fonctions.
Pour utiliser les extensions, vous devez passer au forfait Blaze. Un montant minime (généralement de l'ordre de 0,01 $/mois) vous sera facturé pour les ressources Firebase requises par chaque extension que vous installez (même si elles ne sont pas utilisées), en plus des frais liés à votre utilisation des services Firebase.
Cloud Messaging
Cloud Messaging:Quelle est la différence entre l'outil de création de notifications et Cloud Messaging ?
Firebase Cloud Messaging fournit un ensemble complet de fonctionnalités de messagerie via ses SDK clients et ses protocoles de serveur HTTP et XMPP. Pour les déploiements présentant des exigences de messagerie plus complexes, FCM est le bon choix.
Le compositeur de notifications est une solution de messagerie légère et sans serveur basée sur Firebase Cloud Messaging. Avec une console graphique conviviale et des exigences de codage réduites, le compositeur de notifications permet aux utilisateurs d'envoyer facilement des messages pour réengager et fidéliser les utilisateurs, favoriser la croissance de l'application et prendre en charge les campagnes marketing.
Fonctionnalités | Outil de création de notifications | Cloud Messaging | |
---|---|---|---|
Cible | Un appareil | ||
Clients abonnés à des sujets (par exemple, la météo) | |||
Clients appartenant à un segment d'utilisateurs prédéfini (application, version, langue) | |||
Clients appartenant à des audiences Analytics spécifiées | |||
Clients dans les groupes d'appareils | |||
En amont du client vers le serveur | |||
Type de message | Notifications jusqu'à 2 ko | ||
Messages de données jusqu'à 4 ko | |||
Diffusion | Immédiat | ||
Heure locale de l'appareil client à venir | |||
Analytics | Collecte des données analytiques et analyse de l'entonnoir de conversion des notifications intégrées |
Cloud Messaging:Apple a annoncé l'abandon de l'ancien protocole binaire pour les APN. Dois-je faire quelque chose ?
Non. Firebase Cloud Messaging est passé au protocole APN basé sur HTTP/2 en 2017. Si vous utilisez FCM pour envoyer des notifications aux appareils iOS, aucune action de votre part n'est requise.
Cloud Messaging:Dois-je utiliser d'autres services Firebase pour utiliser FCM ?
Vous pouvez utiliser Firebase Cloud Messaging comme composant autonome, comme vous le faisiez avec GCM, sans utiliser d'autres services Firebase.
Cloud Messaging:Je suis déjà développeur Google Cloud Messaging (GCM). Dois-je passer à Firebase Cloud Messaging ?
FCM est la nouvelle version de GCM sous la marque Firebase. Il hérite de l'infrastructure de base de GCM, avec de nouveaux SDK pour faciliter le développement de Cloud Messaging.
Voici quelques avantages de la migration vers le SDK FCM:
- Simplifier le développement du client Vous n'avez plus besoin d'écrire votre propre logique de réessai d'enregistrement ou d'abonnement.
- Une solution de notification prête à l'emploi. Vous pouvez utiliser le composeur de notifications, une solution de notifications sans serveur avec une console Web qui permet à tous les utilisateurs d'envoyer des notifications pour cibler des audiences spécifiques en fonction des insights de Google Analytics.
Pour passer des SDK GCM aux SDK FCM, consultez les guides de migration des applications Android et iOS.
Cloud Messaging:Pourquoi mes appareils cibles ne reçoivent-ils apparemment pas de messages ?
Lorsque les appareils ne semblent pas avoir reçu de messages, vérifiez d'abord ces deux causes potentielles:
Gestion des messages au premier plan pour les messages de notification Les applications clientes doivent ajouter une logique de gestion des messages pour gérer les messages de notification lorsque l'application est exécutée au premier plan sur l'appareil. Consultez les détails pour iOS et Android.
Restrictions du pare-feu réseau Si votre organisation dispose d'un pare-feu qui limite le trafic vers ou depuis Internet, vous devez le configurer pour autoriser la connectivité avec FCM afin que vos applications clientes Firebase Cloud Messaging puissent recevoir des messages. Les ports à ouvrir sont les suivants:
- 5228
- 5229
- 5230
FCM utilise généralement 5228, mais parfois 5229 et 5230. FCM ne fournit pas d'adresses IP spécifiques. Vous devez donc autoriser votre pare-feu à accepter les connexions sortantes vers toutes les adresses IP figurant dans les blocs IP listés dans l'ASN 15169 de Google.
Cloud Messaging:J'ai implémenté onMessageReceived
dans mon application Android, mais il n'est pas appelé.
Lorsque votre application est en arrière-plan, des
messages de notification s'affichent dans la barre d'état système et onMessageReceived
n'est pas appelé. Pour les messages de notification avec une charge utile de données, le message de notification s'affiche dans la barre d'état du système, et les données incluses avec le message de notification peuvent être récupérées à partir de l'intent lancé lorsque l'utilisateur appuie sur la notification.
Pour en savoir plus, consultez la section Recevoir et gérer les messages.
Notifications composer:quelle est la différence entre Notifications composer et Cloud Messaging ?
Le compositeur de notifications est une solution de messagerie légère et sans serveur basée sur Firebase Cloud Messaging. Avec une console graphique conviviale et des exigences de codage réduites, le compositeur de notifications permet aux utilisateurs d'envoyer facilement des messages pour réengager et fidéliser les utilisateurs, favoriser la croissance de l'application et prendre en charge les campagnes marketing.
Firebase Cloud Messaging fournit un ensemble complet de fonctionnalités de messagerie via ses SDK clients et ses protocoles de serveur HTTP et XMPP. Pour les déploiements présentant des exigences de messagerie plus complexes, FCM est le bon choix.
Voici un comparatif des fonctionnalités de messagerie fournies par Firebase Cloud Messaging et le composable Notifications:
Fonctionnalités | Outil de création de notifications | Cloud Messaging | |
---|---|---|---|
Cible | Un appareil | ||
Clients abonnés à des sujets (par exemple, la météo) | |||
Clients appartenant à un segment d'utilisateurs prédéfini (application, version, langue) | |||
Clients appartenant à des audiences Analytics spécifiées | |||
Clients dans les groupes d'appareils | |||
En amont du client vers le serveur | |||
Type de message | Notifications jusqu'à 2 ko | ||
Messages de données jusqu'à 4 ko | |||
Diffusion | Immédiat | ||
Heure locale de l'appareil client à venir | |||
Analytics | Collecte des données analytiques et analyse de l'entonnoir de conversion des notifications intégrées |
Notifications composer:je suis déjà développeur Google Cloud Messaging (GCM) et je souhaite utiliser Notifications Composer. Que dois-je faire ?
L'outil de création de notifications est une solution prête à l'emploi qui permet à tous les utilisateurs d'envoyer des notifications pour cibler des audiences spécifiques en fonction des insights de Google Analytics. De plus, l'outil de création de notifications fournit une analyse de l'entonnoir pour chaque message, ce qui permet d'évaluer facilement l'efficacité des notifications.
Si vous êtes déjà développeur GCM, pour utiliser le Composeur de notifications, vous devez passer des SDK GCM aux SDK FCM. Consultez les guides de migration des applications Android et iOS.
Fonctionnalités FCM obsolètes en juin 2023
Quelles API FCM ont été abandonnées le 20 juin 2023, et que dois-je faire si je les utilise ?
Les API/SDK suivants seront concernés par l'abandon:
API de serveur
Nom d'API | Point de terminaison de l'API | Impact sur les utilisateurs | Action requise |
---|---|---|---|
Ancien protocole HTTP | https://fcm.googleapis.com/fcm/send | Les requêtes envoyées au point de terminaison commenceront à échouer après le 21 juin 2024. | Migrer vers l'API HTTP v1 |
Ancien protocole XMPP | fcm-xmpp.googleapis.com:5235 | Les requêtes envoyées au point de terminaison commenceront à échouer après le 21 juin 2024. | Migrer vers l'API HTTP v1 |
API de serveur d'ID d'instance | https://iid.googleapis.com/v1/web/iid | Les requêtes envoyées au point de terminaison commenceront à échouer après le 21 juin 2024. | Utilisez le SDK Web JS pour créer des enregistrements Web FCM. |
https://iid.googleapis.com/iid/* | Les points de terminaison continueront de fonctionner, mais ils ne seront plus compatibles avec l'authentification à l'aide de clés de serveur statiques après le 21 juin 2024. | Utilisez un jeton d'accès OAuth 2.0 dérivé d'un compte de service. | |
API de gestion des groupes d'appareils | https://fcm.googleapis.com/fcm/notification | Le point de terminaison continuera de fonctionner, mais il ne sera plus compatible avec l'authentification à l'aide de clés de serveur statiques après le 21 juin 2024. | Utilisez un jeton d'accès OAuth 2.0 dérivé d'un compte de service. |
Messagerie en amont via XMPP | fcm-xmpp.googleapis.com:5235 | Les appels d'API à FirebaseMessaging.send dans l'application ne déclencheront plus de messages en amont vers le serveur de l'application après le 21 juin 2024. | Implémentez cette fonctionnalité dans la logique de votre serveur. Par exemple, certains développeurs implémentent leur propre point de terminaison HTTP/gRPC et l'appellent directement pour envoyer des messages de leurs clients au serveur de l'application. Consultez ce guide de démarrage rapide de gRPC pour obtenir un exemple d'implémentation de la messagerie en amont à l'aide de gRPC. |
API d'envoi par lot | https://fcm.googleapis.com/batch | Les requêtes envoyées au point de terminaison commenceront à échouer après le 21 juin 2024. | Passez à la méthode d'envoi standard de l'API HTTP v1, qui est compatible avec HTTP/2 pour le multiplexage. |
API du SDK Admin Firebase
Nom d'API | Langue de l'API | Impact sur les utilisateurs | Action requise |
---|---|---|---|
sendToDevice()
|
Node.js | L'API cessera de fonctionner après le 21 juin 2024, car elle appelle l'ancienne API d'envoi HTTP. | Utilisez la méthode send() .
|
sendToDeviceGroup()
|
Node.js | L'API cessera de fonctionner après le 21 juin 2024, car elle appelle l'ancienne API d'envoi HTTP. | Utilisez la méthode send() .
|
sendToTopic()
|
Node.js | L'API cessera de fonctionner après le 21 juin 2024, car elle appelle l'ancienne API d'envoi HTTP. | Utilisez la méthode send() .
|
sendToCondition()
|
Node.js | L'API cessera de fonctionner après le 21 juin 2024, car elle appelle l'ancienne API d'envoi HTTP. | Utilisez la méthode send() .
|
sendAll()/sendAllAsync()/send_all()/sendMulticast()/SendMulticastAsync()/send_multicast()
|
Node.js, Java, Python, Go, C# | Ces API cesseront de fonctionner après le 21 juin 2024, car elles appellent l'API d'envoi par lot . | Passez à la dernière version du SDK Firebase Admin et utilisez les nouvelles API à la place: sendEach()/
sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/
send_each_for_multicast() .
Notez que les nouvelles API n'appellent plus l'API d'envoi par lot obsolète. C'est pourquoi elles peuvent créer plus de connexions HTTP simultanées que les anciennes API. |
SDK client
Versions du SDK | Impact sur les utilisateurs | Action requise |
---|---|---|
SDK GCM (obsolètes en 2018) | Après le 21 juin 2024, les applications qui utilisent des SDK GCM ne pourront plus enregistrer de jetons ni recevoir de messages de FCM. | Mettez à niveau votre SDK Android vers la dernière version du SDK Firebase si vous ne l'avez pas déjà fait. |
SDK JavaScript version <7.0.0 (modification importante apportée à la version 7.0.0 en 2019) | Les applications Web qui utilisent d'anciens SDK JavaScript ne pourront plus enregistrer de jetons après le 21 juin 2024. | Mettez à niveau votre SDK Web Firebase vers la dernière version. |
Mon service sera-t-il rétrogradé avant juin 2024 ?
Non. Vous disposez de 12 mois (du 20 juin 2023 au 21 juin 2024) pour passer des anciennes API aux nouvelles sans dégradation de service. Nous vous recommandons vivement de planifier la migration le plus tôt possible afin de ne pas être affecté par le décommissionnement des API en juin 2024.
Après juin 2024, vous risquez de constater une augmentation des erreurs ou un manque de fonctionnalités lorsque vous utiliserez les API/SDK listés ci-dessus (pour en savoir plus, consultez la question fréquente suivante).
Comment et quand les API obsolètes seront-elles arrêtées ?
FCM commencera à abandonner progressivement les API obsolètes vers le 22 juillet 2024. Passée cette date, les services obsolètes seront soumis à un processus de "clignotement", au cours duquel un nombre croissant de requêtes renverront des réponses d'erreur. Au cours de la période de réduction progressive, vous pouvez vous attendre à ce que la fréquence des comportements et des réponses d'erreur suivants augmente au fil du temps:
Catégorie | À quoi vous attendre |
---|---|
Ancien protocole HTTP | Les requêtes sont rejetées avec le code HTTP 301. |
Ancien protocole XMPP | Requêtes rejetées avec le code d'erreur 302. |
FCM en amont | Les messages sont supprimés de manière silencieuse par le backend FCM. |
API d'envoi par lot | Requêtes rejetées avec le code d'erreur UNIMPLEMENTED et le message d'erreur "L'API est obsolète". |
SDK GCM : jetons d'enregistrement | Les requêtes sont rejetées avec le code HTTP 301. |
SDK GCM : envoyer des messages | Les requêtes sont rejetées avec le code d'erreur 400 et le message d'erreur "Le jeton V3 a été abandonné". |
Version des SDK JavaScript < 7.0.0 | Les requêtes sont rejetées avec le code HTTP 501. |
Utiliser une clé de serveur pour accéder aux API de gestion de l'ID d'instance et des groupes d'appareils | Les requêtes sont rejetées avec le code HTTP 401. |
Quelle est la différence entre les jetons OAuth 2.0 et les clés de serveur ?
Un jeton OAuth 2.0 est un jeton de courte durée dérivé d'un compte de service. Il s'agit du modèle d'authentification standard de Google. Il est plus sécurisé que les clés de serveur statiques.
Consultez Utiliser des identifiants pour créer des jetons d'accès pour obtenir des conseils sur l'utilisation de la bibliothèque Google Auth pour obtenir des jetons.
Notez que les en-têtes de requête diffèrent lorsque vous utilisez des jetons OAuth 2.0 pour les requêtes vers différents points de terminaison.
- API HTTP v1:
Authorization: Bearer $oauth_token
- API du serveur d'ID d'instance et API de gestion des groupes d'appareils:
Authorization: Bearer $oauth_token
access_token_auth: true
Puis-je migrer toutes mes requêtes vers la nouvelle API en une seule fois ?
Nous vous recommandons d'augmenter progressivement votre trafic vers la nouvelle API. Si vous prévoyez d'envoyer régulièrement plus de 600 000 messages/min, contactez l'assistance Firebase pour obtenir des instructions sur l'augmentation du quota ou des recommandations sur la répartition du trafic.
Quelle est la différence entre l'API HTTP v1 et les anciennes API lorsque j'envoie des messages à des sujets/groupes d'appareils ?
Thèmes: vous n'avez pas besoin d'ajouter le préfixe "/topics/" à votre cible de thème lorsque vous utilisez l'API v1.
Groupes d'appareils: vous pouvez utiliser un jeton de groupe comme cible de jeton dans l'API HTTP v1. Toutefois, l'API HTTP v1 ne renvoie pas le nombre de succès/d'échecs dans la réponse. Nous vous recommandons d'utiliser des sujets FCM ou de gérer vous-même vos groupes d'appareils.
L'API HTTP v1 permet-elle d'envoyer des messages à plusieurs jetons dans une seule requête ?
Non. Cette fonctionnalité, appelée "multicast" dans les anciennes API HTTP, n'est pas prise en charge par l'API HTTP v1, qui est mieux conçue pour la scalabilité.
Pour les cas d'utilisation où la latence de bout en bout est critique ou où la taille totale du fan-out est faible (moins d'un million), Google recommande d'envoyer plusieurs requêtes distinctes à l'aide de l'API HTTP v1. L'API HTTP v1 sur HTTP/2 offre des performances similaires pour 99,9% des requêtes multicast (envoi de moins de 100 jetons). Pour les cas d'utilisation inhabituels (envoi de 1 000 jetons), il atteint jusqu'à un tiers du débit. Une concurrence supplémentaire est donc nécessaire pour optimiser ce cas d'utilisation atypique. L'API HTTP v1 offre aux utilisateurs une fiabilité et une disponibilité supérieures à celles de l'ancien multicast.
Pour les cas d'utilisation où la bande passante de débit et de sortie est prioritaire ou où la taille totale du fanout est importante (plus de 1 million), Google recommande la messagerie par sujets. Bien que la messagerie par sujet nécessite une action ponctuelle pour abonner les destinataires à un sujet, elle offre un taux de diffusion maximal de 10 000 RPS par projet,sans limite maximale de taille de sujet.
Quelles versions du SDK Admin Firebase incluent les nouvelles API ?
Plate-forme | Version du SDK Admin Firebase |
---|---|
Node.js | >=11.7.0 |
Python | ≥6.2.0 |
Java | >=9.2.0 |
Accéder | >=4.12.0 |
.NET | ≥2.4.0 |
Quelle est la différence entre l'API d'envoi par lot et l'API HTTP v1 ?
L'API d'envoi par lot FCM utilise le même format de message et le même mécanisme d'authentification que l'API HTTP v1. Toutefois, il utilise un point de terminaison différent. Si vous souhaitez améliorer l'efficacité, envisagez d'utiliser HTTP/2 pour envoyer plusieurs requêtes via la même connexion HTTP à l'API HTTP v1.
Que dois-je faire si je n'arrive pas à accéder à mon projet ?
Veuillez contacter l'équipe d'assistance Google Cloud pour obtenir de l'aide.
Les nouveaux projets peuvent-ils activer l'ancienne API Cloud Messaging ?
Non. À partir du 20 mai 2024, les nouveaux projets ne pourront plus activer nos anciennes API.
Quand puis-je désactiver l'ancienne API Cloud Messaging ?
Une fois que vous êtes sûr d'avoir complètement migré vers l'API HTTP v1, vous pouvez désactiver l'ancienne API Cloud Messaging (la page risque de ne pas se charger si l'API a déjà été désactivée).
Quotas et limites FCM
Comment informer une grande base de clients en deux minutes ?
Malheureusement, ce cas d'utilisation n'est pas pris en charge. Vous devez répartir votre trafic sur cinq minutes.
Mon application envoie des notifications aux utilisateurs concernant des événements. Ces messages doivent être envoyés immédiatement pour soutenir mon modèle commercial. Puis-je obtenir plus de quota ?
Malheureusement, nous ne pouvons pas augmenter votre quota pour cette raison. Vous devez répartir votre trafic sur cinq minutes.
Mes messages concernent des événements planifiés. Comment envoyer tout mon trafic à l'heure de pointe ?
Nous vous recommandons de commencer à envoyer les notifications au moins cinq minutes avant l'événement.
Combien de temps faudra-t-il pour que ma demande de quota soit traitée ?
Cela dépend un peu de votre utilisation de FCM. Vous devriez recevoir une réponse sous quelques jours ouvrés. Dans certains cas, des échanges peuvent avoir lieu concernant votre utilisation de FCM et diverses circonstances, ce qui peut prolonger le processus. Si toutes les conditions sont remplies, la plupart des demandes sont traitées sous deux semaines.
Comment surveiller mon utilisation des quotas ?
Consultez les conseils Google Cloud sur la représentation graphique et la surveillance des métriques de quota.
Les erreurs 429 sont difficiles à gérer pour moi / mon entreprise. Puis-je bénéficier d'une exemption ou d'un quota supplémentaire pour éviter les erreurs 429 ?
Nous comprenons que les limites de quota puissent être difficiles à respecter, mais elles sont essentielles pour assurer la fiabilité du service. Nous ne pouvons donc pas accorder d'exemptions.
Puis-je obtenir plus de quota pour un événement temporaire ?
Vous pouvez demander un quota supplémentaire pour un événement d'une durée maximale d'un mois. Envoyez la demande au moins un mois à l'avance et indiquez clairement le début et la fin de l'événement. FCM fera tout son possible pour répondre à la demande (aucune augmentation ne peut être garantie). Ces augmentations de quota seront annulées après la date de fin de l'événement.
Mon quota actuel est-il susceptible d'être modifié ?
Bien que Google ne le fasse pas à la légère, les quotas peuvent être modifiés si nécessaire pour protéger l'intégrité du système. Dans la mesure du possible, Google vous informera à l'avance de ces modifications.
Cloud Storage for Firebase
Cloud Storage for Firebase:Pourquoi ne puis-je pas utiliser Cloud Storage for Firebase ?
Cloud Storage for Firebase crée un bucket par défaut dans le niveau sans frais App Engine. Vous pouvez ainsi vous lancer rapidement avec Firebase et Cloud Storage for Firebase, sans avoir à saisir de carte de crédit ni à activer un compte Cloud Billing. Il vous permet également de partager facilement des données entre Firebase et un projet Google Cloud.
Il existe toutefois deux cas connus où ce bucket ne peut pas être créé et où vous ne pouvez pas utiliser Cloud Storage for Firebase:
- Projet importé depuis Google Cloud avec une application Datastore maître/esclave App Engine.
-
Projet importé depuis Google Cloud avec des projets préfixés par le domaine. Exemple :
domain.com:project-1234
.
Il n'existe actuellement aucun moyen de contourner ces problèmes. Nous vous recommandons de créer un projet dans la console Firebase et d'activer Cloud Storage for Firebase dans ce projet.
Cloud Storage for Firebase:Pourquoi reçois-je des réponses avec le code d'erreur 412 concernant les autorisations de compte de service et les opérations de compte de service ayant échoué lorsque j'utilise l'API Cloud Storage for Firebase ?
Il est probable que vous receviez des codes d'erreur 412, car l'API Cloud Storage for Firebase n'est pas activée pour votre projet ou qu'un compte de service nécessaire ne dispose pas des autorisations requises.
Consultez les questions fréquentes associées.
Cloud Storage for Firebase: Puis-je stocker des fichiers exécutables dans les projets du plan Spark ?
Pour les projets du forfait sans frais (Spark), Firebase bloque les importations et l'hébergement de certains types de fichiers exécutables pour Windows, Android et Apple par Cloud Storage for Firebase et Firebase Hosting. Ce règlement vise à empêcher l'utilisation abusive de notre plate-forme.
Le traitement, l'hébergement et l'importation de fichiers non autorisés sont bloqués pour tous les projets Spark créés le 28 septembre 2023 ou après. Pour les projets Spark existants dont les fichiers ont été importés avant cette date, ces fichiers peuvent toujours être importés et hébergés.
Cette restriction s'applique aux projets du forfait Spark. Les projets utilisant le forfait avec paiement à l'usage (Blaze) ne sont pas concernés.
Les types de fichiers suivants ne peuvent pas être hébergés sur Firebase Hosting et Cloud Storage for Firebase:
- Fichiers Windows avec les extensions
.exe
,.dll
et.bat
- Fichiers Android avec extension
.apk
- Fichiers de plate-forme Apple avec l'extension
.ipa
Que dois-je faire ?
Si vous souhaitez toujours héberger ces types de fichiers après le 28 septembre 2023:
- Pour l'hébergement: passez au forfait Blaze avant de pouvoir déployer ces types de fichiers dans Firebase Hosting via la commande
firebase deploy
. - Pour Storage: passez au forfait Blaze pour importer ces types de fichiers dans le bucket de votre choix à l'aide de la CLI GCS, de la console Firebase ou de la console Google Cloud.
Utilisez les outils Firebase pour gérer vos ressources Firebase Hosting et Cloud Storage.
- Pour gérer les ressources dans Firebase Hosting, utilisez la console Firebase pour supprimer les versions selon ce guide.
- Pour gérer les ressources dans Cloud Storage, accédez à la page des produits de stockage de votre projet.
- Dans l'onglet Fichiers, recherchez les fichiers non autorisés à supprimer dans la hiérarchie de vos dossiers, puis sélectionnez-les à l'aide de la case à cocher à côté du ou des noms de fichier sur le côté gauche du panneau.
- Cliquez sur Supprimer, puis confirmez la suppression des fichiers.
Pour en savoir plus sur la gestion des ressources d'hébergement avec les outils Firebase et des buckets Cloud Storage pour Firebase avec les bibliothèques clientes, consultez notre documentation.
Cloud Storage for Firebase:Pourquoi constate-t-on une augmentation inattendue des opérations d'importation et de téléchargement ?
Auparavant, les requêtes de téléchargement et d'importation vers l'API Cloud Storage for Firebase n'étaient pas comptabilisées correctement. Nous avons pris des mesures pour résoudre ce problème à partir du 15 septembre 2023.
Pour les utilisateurs de Blaze, les opérations d'importation et de téléchargement commenceront à être comptabilisées dans votre facture mensuelle. Pour les utilisateurs de Spark, ils commenceront à être déduits de votre limite mensuelle sans frais.
Nous vous recommandons de surveiller votre page d'utilisation pour identifier toute augmentation pouvant être prise en compte dans vos limites.
Cloud Storage for Firebase:Pourquoi de nouveaux ID de compte de service sont-ils associés à mes projets Firebase qui utilisent Cloud Storage for Firebase ?
Firebase utilise des comptes de service pour exploiter et gérer des services sans partager les identifiants utilisateur. Lorsque vous créez un projet Firebase, vous pouvez remarquer qu'un certain nombre de comptes de service sont déjà disponibles dans votre projet.
Le compte de service utilisé par Cloud Storage for Firebase est limité à votre projet et est nommé service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Si vous avez utilisé Cloud Storage for Firebase avant le 19 septembre 2022, vous verrez peut-être un compte de service supplémentaire sur les buckets Cloud Storage précédemment associés nommés firebase-storage@system.gserviceaccount.com
. Depuis le 19 septembre 2022, ce compte de service n'est plus pris en charge.
Vous pouvez afficher tous les comptes de service associés à votre projet dans la console Firebase, dans l'onglet Comptes de service.
Ajouter le nouveau compte de service
Si vous avez déjà supprimé le compte de service ou s'il n'est pas présent dans votre projet, vous pouvez procéder comme suit pour l'ajouter.
- (Recommandé) Automatisé:utilisez le point de terminaison REST AddFirebase pour réimporter votre bucket dans Firebase. Vous n'avez besoin d'appeler ce point de terminaison qu'une seule fois, et non une fois pour chaque bucket associé.
-
Manuelle:suivez la procédure décrite dans Créer et gérer des comptes de service.
Suivez ce guide pour ajouter un compte de service avec le rôle IAM
Cloud Storage for Firebase Service Agent
et le nom de compte de serviceservice-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Supprimer le nouveau compte de service
Nous vous déconseillons vivement de supprimer le compte de service, car cela pourrait bloquer l'accès à vos buckets Cloud Storage depuis vos applications. Pour supprimer le compte de service de votre projet, suivez les instructions de la section Désactiver un compte de service.
Tarifs de Cloud Storage for Firebase
Comment prévoir le montant qui me sera facturé pour les opérations d'importation et de téléchargement ?
Accédez à la page des tarifs Firebase et utilisez le simulateur de formule Blaze. La calculatrice liste tous les types d'utilisation de Cloud Storage for Firebase.
Utilisez les curseurs pour saisir l'utilisation prévue de votre bucket Storage. Le simulateur vous indiquera votre facture mensuelle estimée.
Que se passe-t-il si je dépasse les limites d'importation, de téléchargement ou de stockage du forfait Spark pour Cloud Storage for Firebase ?
Lorsque vous dépassez les limites de Cloud Storage dans un projet avec le forfait Spark, le résultat dépend du type de limite que vous dépassez:
- Si vous dépassez la limite de Go stockés, vous ne pourrez plus stocker de données dans ce projet, sauf si vous supprimez certaines des données stockées ou passez à un forfait offrant plus d'espace de stockage ou un espace de stockage illimité.
- Si vous dépassez la limite de Go téléchargés, votre application ne pourra plus télécharger de données avant le jour suivant (à partir de minuit, heure du Pacifique), sauf si vous passez à un forfait moins restrictif ou sans limite.
- Si vous dépassez la limite d'opérations d'importation ou de téléchargement, votre application ne pourra plus importer ni télécharger de données jusqu'au jour suivant (à partir de minuit, heure du Pacifique), sauf si vous passez à un forfait moins restrictif ou sans limite.
Crashlytics
Consultez la Crashlyticspage d'aide et de dépannage pour obtenir des conseils utiles et des réponses à d'autres questions fréquentes.
Dynamic Links
Dynamic Links:Quels sont les futurs projets de Firebase pour Dynamic Links ?
Consultez les questions fréquentes sur Dynamic Links.
Dynamic Links:Pourquoi mon application Android accède-t-elle deux fois à chaque lien dynamique ?
L'API getInvitation
efface le lien dynamique enregistré pour éviter qu'il ne soit accessible deux fois. Veillez à appeler cette API avec le paramètre autoLaunchDeepLink
défini sur false
dans chacune des activités de lien profond pour le supprimer si l'activité est déclenchée en dehors de l'activité principale.
Hosting
Hosting: Puis-je stocker des fichiers exécutables dans les projets du plan Spark ?
Pour les projets du forfait sans frais (Spark), Firebase bloque les importations et l'hébergement de certains types de fichiers exécutables pour Windows, Android et Apple par Cloud Storage for Firebase et Firebase Hosting. Ce règlement vise à empêcher l'utilisation abusive de notre plate-forme.
Le traitement, l'hébergement et l'importation de fichiers non autorisés sont bloqués pour tous les projets Spark créés le 28 septembre 2023 ou après. Pour les projets Spark existants dont les fichiers ont été importés avant cette date, ces fichiers peuvent toujours être importés et hébergés.
Cette restriction s'applique aux projets du forfait Spark. Les projets utilisant le forfait avec paiement à l'usage (Blaze) ne sont pas concernés.
Les types de fichiers suivants ne peuvent pas être hébergés sur Firebase Hosting et Cloud Storage for Firebase:
- Fichiers Windows avec les extensions
.exe
,.dll
et.bat
- Fichiers Android avec extension
.apk
- Fichiers de plate-forme Apple avec l'extension
.ipa
Que dois-je faire ?
Si vous souhaitez toujours héberger ces types de fichiers après le 28 septembre 2023:
- Pour l'hébergement: passez au forfait Blaze avant de pouvoir déployer ces types de fichiers dans Firebase Hosting via la commande
firebase deploy
. - Pour Storage: passez au forfait Blaze pour importer ces types de fichiers dans le bucket de votre choix à l'aide de la CLI GCS, de la console Firebase ou de la console Google Cloud.
Utilisez les outils Firebase pour gérer vos ressources Firebase Hosting et Cloud Storage.
- Pour gérer les ressources dans Firebase Hosting, utilisez la console Firebase pour supprimer les versions selon ce guide.
- Pour gérer les ressources dans Cloud Storage, accédez à la page des produits de stockage de votre projet.
- Dans l'onglet Fichiers, recherchez les fichiers non autorisés à supprimer dans la hiérarchie de vos dossiers, puis sélectionnez-les à l'aide de la case à cocher à côté du ou des noms de fichier sur le côté gauche du panneau.
- Cliquez sur Supprimer, puis confirmez la suppression des fichiers.
Pour en savoir plus sur la gestion des ressources d'hébergement avec les outils Firebase et des buckets Cloud Storage pour Firebase avec les bibliothèques clientes, consultez notre documentation.
Hosting:Pourquoi la table d'historique des versions Hosting de la console Firebase affiche-t-elle un nombre de fichiers supérieur à celui de mon projet local ?
Firebase ajoute automatiquement des fichiers supplémentaires contenant des métadonnées sur le site Hosting. Ces fichiers sont inclus dans le nombre total de fichiers de la version.
Hosting:Quelle est la plus grande taille de fichier que je peux déployer dans Firebase Hosting ?
La taille maximale de Hosting est limitée à 2 Go par fichier.
Nous vous recommandons de stocker des fichiers volumineux à l'aide de Cloud Storage, qui offre une limite de taille maximale de plusieurs téraoctets pour les objets individuels.
Hosting:Combien de sites Hosting puis-je avoir par projet Firebase ?
La fonctionnalité multisite Firebase Hosting accepte un maximum de 36 sites par projet.
Performance Monitoring
Consultez la Performance Monitoringpage d'aide et de dépannage pour obtenir des conseils utiles et des réponses à d'autres questions fréquentes.
Performance Monitoring:Combien de formats d'URL personnalisés puis-je créer ?
Vous pouvez créer jusqu'à 400 formats d'URL personnalisés au total par application et jusqu'à 100 formats d'URL personnalisés par domaine pour cette application.
Performance Monitoring:Pourquoi les données de performances ne s'affichent-elles pas en temps réel ?
Pour afficher les données de performances en temps réel, assurez-vous que votre application utilise une version du SDK Performance Monitoring compatible avec le traitement des données en temps réel.
- iOS : version 7.3.0 ou ultérieure
- tvOS : version 8.9.0 ou ultérieure
- Android : version 19.0.10 ou ultérieure (ou Firebase Android BoM v26.1.0 ou version ultérieure)
- Web : version 7.14.0 ou ultérieure
Notez que nous vous recommandons toujours d'utiliser la dernière version du SDK, mais n'importe quelle version listée ci-dessus permet à Performance Monitoring de traiter vos données en quasi-temps réel.
Realtime Database
Realtime Database:Qu'est-ce qu'une "connexion simultanée à la base de données" ?
Une connexion simultanée équivaut à un appareil mobile, un onglet de navigateur ou une application de serveur connectés à la base de données. Firebase impose des limites strictes au nombre de connexions simultanées à la base de données de votre application. Ces limites sont mises en place pour protéger Firebase et nos utilisateurs contre les abus.
Le forfait Spark est limité à 100 utilisateurs et ne peut pas être augmenté. Les forfaits Flame et Blaze sont limités à 200 000 connexions simultanées par base de données.
Cette limite n'est pas identique au nombre total d'utilisateurs de votre application, car ils ne se connectent pas tous en même temps. Si vous avez besoin de plus de 200 000 connexions simultanées, consultez Évoluer avec plusieurs bases de données.
Realtime Database:Quelles sont les limites de mise à l'échelle de Realtime Database ?
Chaque instance Realtime Database limite le nombre d'opérations d'écriture par seconde. Pour les petites écritures, cette limite est d'environ 1 000 opérations d'écriture par seconde. Si vous approchez de cette limite, le groupement des opérations à l'aide des mises à jour multicanaux peut vous aider à augmenter le débit.
De plus, chaque instance de base de données est limitée en termes de nombre de connexions simultanées à la base de données. Nos limites par défaut sont suffisamment élevées pour la plupart des applications. Si vous créez une application qui nécessite une évolutivité supplémentaire, vous devrez peut-être segmenter votre application sur plusieurs instances de base de données pour une évolutivité accrue. Vous pouvez également envisager d'utiliser Cloud Firestore comme base de données alternative.
Realtime Database:Que puis-je faire si je dépasse mes limites d'utilisation Realtime Database ?
Si vous avez reçu une alerte par e-mail ou une notification dans la console Firebase vous informant que vous avez dépassé vos limites d'utilisation Realtime Database, vous pouvez y remédier en fonction de la limite d'utilisation que vous avez dépassée. Pour consulter votre utilisation de Realtime Database, accédez au tableau de bord Realtime Database Utilisation dans la console Firebase.
Si vous avez dépassé votre limite de téléchargements,vous pouvez passer à un forfait Firebase supérieur ou attendre que votre limite de téléchargements soit réinitialisée au début de votre prochain cycle de facturation. Pour réduire vos téléchargements, procédez comme suit:
- Ajoutez des requêtes pour limiter les données renvoyées par vos opérations d'écoute.
- Recherchez les requêtes non indexées.
- Utilisez des écouteurs qui ne téléchargent que les mises à jour des données (par exemple,
on()
au lieu deonce()
). - Utiliser des règles de sécurité pour bloquer les téléchargements non autorisés
Si vous dépassez votre limite de stockage,passez à un forfait supérieur pour éviter toute interruption de service. Pour réduire la quantité de données dans votre base de données, procédez comme suit:
- Exécuter des tâches de nettoyage périodiques
- Réduisez les données en double dans votre base de données.
Notez que la suppression de données peut prendre un certain temps pour être répercutée sur votre quota de stockage.
Si vous dépassez la limite de connexions simultanées à la base de données,passez à un forfait supérieur pour éviter toute interruption de service. Pour gérer les connexions simultanées à votre base de données, essayez de vous connecter via les utilisateurs via l'API REST s'ils ne nécessitent pas de connexion en temps réel.
Realtime Database:Que se passe-t-il si je dépasse les limites de stockage ou de téléchargement de l'abonnement Spark pour Realtime Database ?
Pour vous proposer un prix prévisible, les ressources dont vous disposez dans les forfaits Spark sont plafonnées. Cela signifie que si vous dépassez la limite de votre forfait au cours d'un mois, votre application sera désactivée pour éviter toute utilisation supplémentaire de ressources et tout frais supplémentaires.
Realtime Database:Que se passe-t-il si je dépasse les limites de connexion simultanées du forfait Spark pour Realtime Database ?
Lorsque votre application atteint sa limite de simultanéité avec le forfait Spark, toutes les connexions ultérieures sont rejetées jusqu'à ce que certaines des connexions existantes soient fermées. L'application continuera de fonctionner pour les utilisateurs connectés.
Realtime Database:Que sont les sauvegardes automatiques ? Proposez-vous des sauvegardes toutes les heures pour Realtime Database ?
Les sauvegardes automatiques sont une fonctionnalité avancée réservée aux clients disposant de notre forfait Blaze. Elles sauvegardent vos données Firebase Realtime Database une fois par jour et les importent dans Google Cloud Storage.
Nous ne proposons pas de sauvegardes toutes les heures.
Realtime Database:Pourquoi la bande passante de mon Realtime Database était-elle inférieure à la moyenne entre septembre 2016 et mars 2017 ?
Pour nos calculs de bande passante, nous incluons normalement les coûts liés au chiffrement SSL (basés sur la couche 5 du modèle OSI). Cependant, en septembre 2016, nous avons introduit un bug qui a entraîné l'ignorance des coûts liés au chiffrement dans nos rapports sur la bande passante. Cela a peut-être entraîné une bande passante et des factures artificiellement faibles sur votre compte pendant quelques mois.
Nous avons publié un correctif pour ce bug fin mars 2017, ce qui a permis de rétablir les niveaux normaux de reporting et de facturation de la bande passante.
Remote Config
Remote Config:Pourquoi les valeurs extraites ne modifient-elles pas le comportement et l'apparence de mon application ?
Sauf si vous extrayez des valeurs avec fetchAndActivate()
, elles sont stockées localement, mais pas activées. Pour activer les valeurs extraites afin qu'elles puissent prendre effet, appelez activate
. Cette conception vous permet de contrôler le moment où le comportement et l'apparence de votre application changent, car vous pouvez choisir quand appeler activate
. Une fois que vous avez appelé activate
, le code source de votre application détermine quand les valeurs de paramètre mises à jour sont utilisées.
Par exemple, vous pouvez extraire des valeurs, puis les activer la prochaine fois qu'un utilisateur lance votre application. Vous n'avez donc pas besoin de retarder le démarrage de l'application pendant qu'elle attend les valeurs extraites du service. Les modifications apportées au comportement et à l'apparence de votre application se produisent lorsque votre application utilise les valeurs de paramètre mises à jour.
Pour en savoir plus sur l'API Remote Config et le modèle d'utilisation, consultez la présentation de l'API Remote Config.
Remote Config:Je fais beaucoup de requêtes de récupération lors du développement de mon application. Pourquoi mon application n'obtient-elle pas toujours les dernières valeurs du service lorsqu'elle envoie des requêtes de récupération ?
Lors du développement de l'application, vous pouvez souhaiter extraire et activer des configurations très fréquemment (plusieurs fois par heure) pour vous permettre de parcourir rapidement le développement et le test de votre application. Pour permettre une itération rapide sur un projet comprenant jusqu'à 10 développeurs, vous pouvez définir temporairement un objet FirebaseRemoteConfigSettings
avec un intervalle de récupération minimal faible (setMinimumFetchIntervalInSeconds
) dans votre application.
Remote Config:À quelle vitesse le service Remote Config renvoie-t-il les valeurs extraites après l'envoi d'une requête de récupération par mon application ?
Les appareils reçoivent généralement les valeurs extraites en moins d'une seconde, et souvent en millisecondes. Le service Remote Config gère les requêtes de récupération en quelques millisecondes, mais le temps nécessaire pour effectuer une requête de récupération dépend de la vitesse du réseau de l'appareil et de la latence de la connexion réseau utilisée par l'appareil.
Si votre objectif est de faire en sorte que les valeurs extraites prennent effet dans votre application dès que possible, mais sans créer une expérience utilisateur choquante, envisagez d'ajouter des appels à fetchAndActivate
chaque fois que votre application effectue un rafraîchissement en plein écran.
Test Lab
Consultez la page de dépannage Test Lab pour obtenir des conseils utiles et des réponses aux questions fréquentes.
Stockage de segmentation des utilisateurs Firebase
Qu'est-ce que le stockage de segmentation des utilisateurs Firebase ?
Le stockage de segmentation utilisateur Firebase stocke les ID d'installation Firebase, ainsi que les attributs et segments associés, ainsi que les listes d'audience que vous avez créées pour fournir des informations de ciblage aux autres services Firebase qui les utilisent, tels que la personnalisation Crashlytics, FCM et Remote Config, etc.