Vous avez d'autres défis ou ne voyez pas votre problème décrit ci-dessous? Veuillez signaler un bogue ou demander une fonctionnalité et rejoindre les discussions de Stack Overflow .
Projets Firebase et applications Firebase
Qu'est-ce qu'un projet Firebase?
Un projet est un conteneur d'applications sur iOS, Android et Web. Il prend en charge le partage de fonctionnalités telles que la base de données, la configuration et les notifications entre vos applications multiplateformes.
Vous devez ajouter des variantes d'applications iOS, Android et Web à un seul projet. Vous pouvez utiliser plusieurs projets pour prendre en charge plusieurs environnements, tels que le développement, la préparation et la production.
Comment ajouter Firebase à un projet Google Cloud existant?
Vous pouvez avoir des projets existants gérés via la console Google Cloud ou la console des API Google . Par défaut, ces projets sont visibles dans la console Firebase , mais ne sont pas considérés comme des projets Firebase.
Pour ajouter Firebase à votre projet Google Cloud existant, cliquez sur Ajouter un projet sur la page d'accueil de la console Firebase , puis sélectionnez votre projet dans le menu Nom du projet .
Combien de projets puis-je avoir par compte?
- Plan Spark de niveau gratuit - Le quota de votre projet est limité à un petit nombre de projets (généralement entre 5 et 10).
- Forfaits payants - Le quota de votre projet par compte de facturation cloud augmente considérablement tant que votre compte de facturation cloud est en règle.
La limite du quota de projet est rarement une préoccupation pour la plupart des développeurs, mais si nécessaire, vous pouvez demander une augmentation de votre quota de projet .
Notez que la suppression complète d'un projet prend 30 jours et compte dans votre quota jusqu'à ce qu'il soit complètement supprimé.
Combien d'applications Firebase puis-je avoir dans un projet Firebase?
Un projet Firebase est un conteneur pour les applications Firebase sur iOS, Android et sur le Web. Firebase limite le nombre total d'applications Firebase dans un projet Firebase à 30.
Après ce nombre, les performances commencent à se dégrader (en particulier pour Google Analytics) et finalement, avec un nombre d'applications plus élevé, certaines fonctionnalités du produit cessent de fonctionner. En outre, l'ajout d'une application Firebase à un projet crée un ou plusieurs ID client OAuth 2.0 sous-jacents. Il y a une limite d'environ 30 ID client qui peuvent être créés dans un seul 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 en marque blanche, chaque application étiquetée indépendamment doit avoir son propre projet Firebase. Consultez Comprendre les projets Firebase pour en savoir plus sur les meilleures pratiques sur les projets Firebase et les applications Firebase.
Dans les rares cas où votre projet nécessite plus de 30 applications, vous pouvez demander une augmentation de la limite d'application. Votre projet doit être sur le plan de facturation Blaze pour faire cette demande. Accédez à la console Google Cloud pour faire votre demande et la faire évaluer. En savoir plus sur la gestion des quotas dans la documentation Google Cloud.
Où puis-je trouver l'ID d'application de mon application Firebase?
Dans la console Firebase, accédez à vos settings projet . Faites défiler jusqu'à la carte Vos applications , puis cliquez sur l'application Firebase souhaitée pour afficher les informations de l'application, y compris son ID d'application .
Voici quelques exemples de valeurs d'ID d'application:
- Applications Firebase iOS:
1:1234567890:ios:321abc456def7890
- Applications Android Firebase:
1:1234567890:android:321abc456def7890
- Applications Web Firebase:
1:1234567890:web:321abc456def7890
Dois-je fournir un SHA-1 lors de l'ajout d'une application Android?
Les informations SHA-1 sont requises par l'authentification Firebase (lors de l'utilisation de la connexion Google ou de la connexion par numéro de téléphone ) et des liens dynamiques Firebase . Si vous n'utilisez pas ces fonctionnalités, vous n'êtes pas obligé de fournir un SHA-1.
Comment résoudre cette erreur: "Un client OAuth2 existe déjà pour ce nom de package et SHA-1 dans un autre projet"?
Cette erreur se produit si nous détectons qu'un autre projet Firebase ou Google Cloud contient un ID client OAuth 2.0 avec le nom du package et SHA-1 que vous avez spécifiés. Apprenez à résoudre cette erreur .
Lorsque j'ajoute Firebase à mon projet Android, j'obtiens une erreur "Impossible de trouver".
Cette erreur signifie généralement qu'il manque une ou plusieurs références au référentiel Maven de Google dans votre application. Dans votre fichier build.gradle
niveau du build.gradle
, assurez-vous d'inclure le référentiel Maven de google()
) dans vos sections buildscript
et allprojects
.
Quelles sont les conditions préalables pour associer Play / AdMob / AdWords / BigQuery à mon projet Firebase?
- Pour associer votre compte Play , vous devez être à la fois propriétaire d'un projet Firebase et propriétaire d'un compte Play.
- 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.
Quels avis Open Source dois-je inclure dans mon application?
Sur iOS, le pod Firebase contient un fichier NOTICES qui inclut les entrées pertinentes. Le SDK Firebase Android contient une Activity
assistance pour afficher les informations de licence.
Quelles versions de Xcode sont prises en charge par Firebase?
Firebase prend en charge jusqu'à deux versions majeures de Xcode, sans compter les versions de Xcode que Apple ne prend plus en charge. Par exemple, à partir de mars 2019, Apple nécessite au moins iOS 12 sur toutes les applications iOS, ce qui signifie que la prise en charge de Xcode 9 sera abandonnée et Xcode 10 sera la seule version majeure prise en charge.
Les modifications apportées à la prise en charge de versions mineures ou de correctifs spécifiques de Xcode (par exemple, 9.2.0 à 9.4.1) sont déterminées en fonction des besoins du SDK Firebase iOS et d'une enquête sur l'utilisation par les développeurs. Ces modifications sont reflétées dans les notes de mise à jour du SDK Firebase iOS et sur la page de configuration du SDK Firebase iOS .
Pour voir la version minimale de Xcode prise en charge par le SDK Firebase iOS, vérifiez les exigences répertoriées dans Ajouter Firebase à votre projet iOS .
La prise en charge de Firebase pour les versions bêta de Xcode est disponible sur la base du «meilleur effort». Les développeurs peuvent suivre et soumettre les problèmes dans le référentiel du SDK Firebase iOS sur GitHub .
Console Firebase
Quels sont les navigateurs pris en charge pour accéder à la console Firebase?
La console Firebase est accessible à partir des versions récentes des navigateurs de bureau populaires tels que Chrome, Firefox, Safari et Edge. Les navigateurs mobiles ne sont actuellement pas entièrement pris en charge.
Pourquoi la console Firebase ne se charge-t-elle pas pour moi?
Voici quelques étapes de dépannage à essayer si vous rencontrez des problèmes lors du chargement de la console Firebase:
- Vérifiez la ligne Console du tableau de bord d'état de Firebase pour toute interruption de service possible.
- Assurez-vous que vous utilisez un navigateur pris en charge .
- Essayez de charger la console Firebase dans une fenêtre de navigation privée ou privée.
- Désactivez toutes les extensions de navigateur.
- Vérifiez si quelque chose bloque votre connexion, comme un logiciel antivirus, des proxys réseau ou un pare-feu. Si tel est le cas, essayez de les désactiver.
- Essayez de charger la console Firebase à l'aide d'un autre réseau ou périphérique.
Si aucune des étapes de dépannage ci-dessus ne résout le problème, veuillez contacter l'assistance .
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 de langue, voir Changer de langue .
La console Firebase prend en charge les langues suivantes:
- Anglais
- portugais brésilien
- français
- Allemand
- indonésien
- Japonais
- coréen
- russe
- Chinois simplifié
- Espanol
- Chinois traditionnel
Quels rôles et autorisations la console Firebase prend-elle en charge?
La console Firebase et Google Cloud Console utilisent les mêmes rôles et autorisations sous-jacents. En savoir plus sur les rôles et les autorisations dans la documentation Firebase IAM .
Firebase prend en charge les rôles fondamentaux (de base) de propriétaire, éditeur et visionneuse:
- Un propriétaire de projet peut ajouter d'autres membres au projet, configurer des intégrations (projet lié à des services tels que BigQuery ou Slack) et dispose d'un accès complet en modification pour le projet.
- Un éditeur de projet dispose d'un accès d'édition complet pour le projet.
- Une visionneuse 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 contrôles de modification de l'interface utilisateur des visionneuses de projet, mais ces opérations échoueront pour les membres du projet auxquels le rôle de visionneuse est attribué.
Firebase prend également en charge:
- Rôles prédéfinis Firebase - Rôles spécifiques à Firebase qui permettent un contrôle d'accès plus granulaire que les rôles de base de Propriétaire, Éditeur et Visionneuse.
- Rôles personnalisés: rôles IAM entièrement personnalisés que vous créez pour personnaliser un ensemble d'autorisations répondant aux exigences spécifiques de votre organisation.
Tarification
Quels produits sont payés? Quels sont gratuits?
Les produits d'infrastructure payants de Firebase sont la base de données en temps réel, le stockage en nuage pour Firebase, les fonctions, l'hébergement, le laboratoire de test et l'authentification par téléphone. Nous offrons un niveau gratuit pour toutes ces fonctionnalités.
Firebase propose également de nombreux produits gratuits: Analytics, Cloud Messaging, l'éditeur de notifications, Remote Config, App Indexing, Dynamic Links et Crash Reporting. Vous pouvez utiliser une quantité illimitée de l'un de ces produits dans tous les plans, y compris notre plan Spark gratuit. De plus, toutes les fonctionnalités d'authentification au-delà de l'authentification téléphonique sont gratuites.
Firebase propose-t-il des crédits d'essai gratuits pour les produits payants?
Les services payants Firebase peuvent être utilisés dans le cadre de l' essai gratuit de Google Cloud . Les nouveaux utilisateurs de Google Cloud et Firebase peuvent profiter d'une période d'essai de 90 jours comprenant 300 USD de crédits Cloud Billing gratuits pour explorer et évaluer les produits et services Google Cloud et Firebase.
Pendant la période d'essai gratuit de Google Cloud, vous recevrez un compte d'essai gratuit de facturation dans le cloud. Tout projet Firebase utilisant ce compte de facturation bénéficiera du plan de facturation Blaze pendant la période d'essai gratuite.
Ne vous inquiétez pas, la configuration de ce compte d'essai gratuit de facturation dans le cloud ne nous permet pas de vous facturer. Vous n'êtes pas facturé, sauf si vous activez explicitement la facturation en mettant à niveau votre compte de facturation dans le cloud d'essai gratuit vers un compte payant. Vous pouvez passer à un compte payant à tout moment pendant la période d'essai. Une fois la mise à niveau effectuée, vous pouvez toujours utiliser les crédits restants (pendant la période de 90 jours).
Une fois l'essai gratuit expiré, vous devrez soit rétrograder votre projet vers le plan de facturation Spark, soit configurer le plan de facturation Blaze à l'utilisation dans la console Firebase pour continuer à utiliser votre projet Firebase.
En savoir plus sur l' essai gratuit de Google Cloud .
Comment savoir quel plan me convient?
Plan de facturation Spark
Notre plan Spark est un excellent endroit pour développer votre application gratuitement. Vous obtenez toutes les fonctionnalités gratuites de Firebase (Analytics, l'éditeur de notifications, Crash Reporting, etc.) et des quantités généreuses de nos fonctionnalités d'infrastructure payantes. Toutefois, si vous dépassez les ressources de votre plan Spark au cours d'un mois calendaire, votre application sera fermée pour le reste de ce mois. De plus, les fonctionnalités de Google Cloud ne sont pas disponibles dans le niveau Spark.
Plan de facturation Blaze
Notre plan Blaze est conçu pour les applications de production. Le plan Blaze vous permet également d'étendre votre application avec des fonctionnalités payantes de Google Cloud. Vous ne payez que pour les ressources que vous consommez, ce qui vous permet de vous adapter à la demande. Nous nous efforçons de rendre les prix de nos forfaits Blaze compétitifs par rapport aux principaux fournisseurs de cloud du secteur.
Comment puis-je surveiller mon utilisation et ma facturation?
Vous pouvez suivre votre utilisation des ressources du projet dans la console Firebase sur l'un des tableaux de bord suivants:
- Tableau de bord d' utilisation et de facturation global au niveau du projet
- Tableau de bord d' utilisation de l' authentification (spécifiquement pour les instances d'authentification par téléphone)
- Tableau de bord d' utilisation de Cloud Firestore
- Tableau de bord d' utilisation de Cloud Functions
- Tableau de bord d' utilisation de Cloud Storage
- Tableau de bord d' utilisation de l' hébergement
- Tableau de bord d' utilisation de la base de données en temps réel
Qu'est-il arrivé au plan de facturation Flame?
Depuis janvier 2020, le plan de facturation Flame (25 $ / mois de quota supplémentaire) n'est plus disponible pour les nouvelles inscriptions.
- Les projets de plan Spark et Blaze existants et tout nouveau projet ne peuvent plus basculer ou s'inscrire au plan Flame.
- Si vous déplacez un projet de plan Flame existant vers un autre plan de facturation, le projet ne peut pas revenir au plan Flame.
- Les projets de plan Flame existants peuvent continuer à utiliser le plan Flame pour le moment. Cependant, vous recevrez dans les mois à venir des informations sur le calendrier requis pour passer à un autre plan de facturation.
- Les références au plan Flame ont été supprimées de la documentation.
Avez-vous d'autres questions sur le plan de retraite Flame? Lisez quelques-unes des FAQ supplémentaires ci-dessous.
Vous souhaitez en savoir plus sur les autres plans de facturation proposés par Firebase? Consultez notre page de tarification Firebase ! Si vous souhaitez commencer à déplacer des projets existants vers un autre plan de facturation, vous pouvez le faire dans la console Firebase de votre projet.
Pour les projets de plan Flame existants, les quotas de plan et la disponibilité des fonctionnalités restent en vigueur.
- Le plan de la flamme ne fournit pas de quota d'utilisation pour les produits suivants:
BigQuery et autres IaaS de Google Cloud - Le plan Flame comprend un quota d'utilisation gratuite pour les produits suivants:
Tests A / B, analyses, indexation des applications, messagerie cloud (FCM), Crashlytics, liens dynamiques, surveillance des performances, prédictions et configuration à distance Le plan Flame comprend un quota d'utilisation pour les produits suivants:
Produit Fonctionnalité Inclus dans le plan Flame Authentification Phone Auth - États-Unis, Canada et Inde 10k / mois Phone Auth - Tous les autres pays 10k / mois Autres services et fonctionnalités d'authentification ✔ (gratuit) Cloud Firestore Stockage de données 2,5 Gio au total Sortie réseau 20 Gio / mois Document écrit 100k / jour Lectures de documents 250k / jour Suppression de documents 100k / jour Cloud Functions pour Firebase Invocations 2M / mois Go-secondes 400k / mois CPU-secondes 200k / mois Réseau sortant 5 Go / mois Hébergement Stockage de données 10 Go au total Transfert de données 50 Go / mois Domaine personnalisé et SSL ✔ (gratuit) Plusieurs sites par projet ✔ (gratuit) Firebase ML Hébergement / service de modèles personnalisés ✔ (gratuit) Jeu de données AutoML Vision Edge 1k images / projet Formation AutoML Vision Edge 3 heures / projet API Cloud Vision non inclus Base de données en temps réel Connexions simultanées 200 000 Stockage de données 2,5 Go au total Téléchargement de données 20 Go / mois Plusieurs bases de données par projet non inclus Stockage en ligne Stockage de données 50 Go au total Téléchargement de données 50 Go / jour Opérations de téléchargement 100k / jour Télécharger les opérations 250k / jour Plusieurs compartiments par projet non inclus Laboratoire de test Tests d'appareils virtuels 10 tests / jour Tests d'appareils physiques 5 tests / jour
FAQ supplémentaires sur la retraite du plan Flame
Qu'arrive-t-il actuellement à mes projets de plan Flame existants?
Pour l'instant, aucun changement n'est apporté à votre projet ou à votre facturation. Cependant, vous recevrez dans les mois à venir des informations sur le calendrier requis pour passer à un autre plan de facturation.
Qu'arrivera-t-il à mes projets de plan Flame existants à l'avenir?
Pour le moment, il n'y a pas de calendrier spécifique pour déplacer les projets de plan Flame vers un autre plan de facturation. Cependant, vous recevrez dans les mois à venir des informations sur le calendrier requis pour passer à un autre plan de facturation.
J'ai un projet / un processus / un business model qui repose sur un coût Firebase fixe. Que devrais-je faire?
Inscrivez-vous au forfait Blaze pay-as-you-go et assurez-vous de définir des alertes de budget de projet.
Puis-je bénéficier d'un accès spécial pour créer de nouveaux projets de plan Flame?
Non, Firebase n'offre pas d'accès spécial aux projets pour passer ou s'inscrire au plan Flame.
J'ai changé mon projet de plan Flame en un autre plan de facturation. Comment puis-je le modifier?
Le passage au plan Flame n'est plus possible. Pour accéder aux services fournis par le plan Flame, assurez-vous que vous utilisez le plan Blaze pay-as-you-go et envisagez de définir des alertes budgétaires pour votre projet.
Mon projet a été automatiquement basculé vers un autre plan de facturation dans le cadre du retrait du plan Flame. Que devrais-je faire?
Les modifications du plan de facturation automatique ne font pas partie de la portée actuelle du retrait du plan Flame. Assurez-vous de vérifier vos journaux d'audit pour les modifications de facturation.
Pourquoi le plan Flame est-il retiré?
Au fil des ans, nous avons constaté une diminution de l'utilisation du plan Flame, et la plupart des projets qui utilisent le plan n'en consomment pas toute sa valeur. Le maintien de ce plan de facturation n'est généralement pas rentable et nous pensons que nous pouvons mieux servir tout le monde si les ressources sont allouées à d'autres initiatives Firebase.
En quoi l'utilisation gratuite dans le plan Blaze est-elle différente de l'utilisation gratuite dans le plan Spark?
L'utilisation gratuite sur le plan Blaze est calculée quotidiennement. Les limites d'utilisation diffèrent également du plan Spark pour les fonctions cloud, l'authentification par téléphone et le laboratoire de test.
Pour Cloud Functions, l'utilisation gratuite du forfait Blaze est calculée au niveau du compte de facturation, et non au niveau du projet, et présente les limites suivantes:
- 2 millions d'appels / mois
- 400K Go-secondes / mois
- 200K CPU-secondes / mois
- 5 Go de sortie réseau / mois
Pour l'authentification par téléphone, l'utilisation gratuite du forfait Blaze est calculée mensuellement.
Pour Test Lab, l'utilisation gratuite sur le plan Blaze a les limites suivantes:
- 30 minutes d'appareil physique / jour
- 60 minutes de périphérique virtuel / jour
Le quota d'utilisation gratuite est-il réinitialisé lorsque je passe d'un forfait Spark à un forfait Blaze?
L'utilisation gratuite du plan Spark est incluse dans le plan Blaze. L'utilisation gratuite ne se réinitialise pas lors du passage à un forfait Blaze.
Qu'est-ce qu'une "connexion simultanée à une base de données"?
Une connexion simultanée équivaut à un appareil mobile, un onglet de navigateur ou une application serveur connecté à 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 en place pour protéger Firebase et nos utilisateurs contre les abus.
La limite du plan Spark est de 100 et ne peut pas être augmentée. Les plans Flame et Blaze ont une limite de 200 000 connexions simultanées par base de données.
Cette limite n'est pas la même que le nombre total d'utilisateurs de votre application, car vos utilisateurs ne se connectent pas tous en même temps. Si vous avez besoin de plus de 200 000 connexions simultanées, veuillez lire Échelle avec plusieurs bases de données .
Que se passe-t-il si je dépasse le stockage du plan Spark ou les limites de téléchargement pour la base de données en temps réel?
Pour vous fournir un prix prévisible, les ressources dont vous disposez dans les plans Spark sont plafonnées. Cela signifie que lorsque vous dépassez une limite de plan au cours d'un mois, votre application sera désactivée pour éviter toute utilisation supplémentaire des ressources et frais supplémentaires.
Que se passe-t-il si je dépasse les limites de connexion simultanée du plan Spark pour la base de données en temps réel?
Lorsque votre application atteint sa limite de concurrents sur le plan Spark, toutes les connexions suivantes seront rejetées jusqu'à ce que certaines des connexions existantes soient fermées. L'application continuera de fonctionner pour les utilisateurs connectés.
Que se passe-t-il si je dépasse les limites de téléchargement, de téléchargement ou de stockage du plan Spark pour Cloud Storage?
Lorsque vous dépassez les limites de Cloud Storage dans un projet du plan 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 à moins de supprimer certaines des données stockées ou de passer à un plan 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 pas télécharger plus de données avant le lendemain (à partir de minuit, heure du Pacifique), sauf si vous passez à un plan avec des limites moins restrictives ou sans limites.
- Si vous dépassez la limite des opérations de téléversement ou de téléchargement , votre application ne sera pas en mesure de téléverser ou de télécharger plus de données avant le lendemain (à partir de minuit, heure du Pacifique), sauf si vous passez à un plan avec des limites moins restrictives, ou sans limites.
Comment fonctionne l'intégration de Firebase avec Google Cloud?
Firebase est profondément intégré à Google Cloud . Les projets sont partagés entre Firebase et Google Cloud, de sorte que les projets peuvent avoir les services Firebase et les services Google Cloud activés. Vous pouvez accéder au même projet depuis la console Firebase ou la console Google Cloud. Spécifiquement:
- Certains produits Firebase sont directement soutenus par Google Cloud, comme Cloud Storage pour Firebase. La liste des produits soutenus par Google Cloud continuera de s'allonger au fil du temps.
- La plupart de vos paramètres, y compris les collaborateurs et les informations de facturation, sont partagés par Firebase et Google Cloud. Votre utilisation de Firebase et de Google Cloud apparaît sur la même facture.
De plus, lorsque vous passez au forfait Blaze, vous pouvez utiliser n'importe quelle infrastructure en tant que service et API de classe mondiale de Google Cloud directement dans votre projet Firebase, au prix standard de Google Cloud . Vous pouvez également exporter des données de Google Cloud directement vers BigQuery pour analyse. Pour en savoir plus, consultez Associer BigQuery à Firebase.
L'utilisation de Google Cloud avec Firebase présente de nombreux avantages en termes d'amélioration de la sécurité, de latence et de gain de temps (par rapport à d'autres services cloud qui ne sont pas co-localisés). Consultez le site Google Cloud pour plus de détails.
Qu'arrive-t-il à mon projet Firebase si j'ajoute ou supprime des comptes de facturation pour ce projet dans Google Cloud Console?
Si un compte de facturation est ajouté à un projet dans Google Cloud Console, le même projet sera automatiquement mis à niveau vers le plan Firebase Blaze si ce projet est actuellement sur le plan Spark.
En revanche, si un compte de facturation actif existant est supprimé d'un projet dans Google Cloud Console, ce projet sera rétrogradé au plan Firebase Spark.
Puis-je mettre à niveau, rétrograder ou annuler à tout moment?
Oui, vous pouvez mettre à niveau, rétrograder ou annuler à tout moment. Notez que nous ne fournissons pas de remboursement au prorata pour les déclassements ou les annulations. Cela signifie que si vous rétrogradez ou annulez avant la fin de votre période de facturation, vous payez toujours pour le reste du mois.
Quel type de soutien vais-je recevoir?
Toutes les applications Firebase, y compris les forfaits gratuits, sont accompagnées d'une assistance par e-mail de la part du personnel Firebase pendant les heures d'ouverture du Pacifique américain. Tous les comptes bénéficient d'une assistance illimitée pour les problèmes liés à la facturation, les problèmes liés au compte, les questions techniques (dépannage) et les rapports d'incident.
Puis-je limiter l'utilisation du forfait Blaze?
Non, vous ne pouvez actuellement pas limiter l'utilisation de votre forfait Blaze. Nous évaluons les options de prise en charge des plafonds d'utilisation du plan Blaze.
Les utilisateurs de Blaze peuvent définir un budget pour leur projet ou compte et recevoir des alertes lorsque leurs dépenses approchent de ces limites. Pour plus d'informations, voir Définir des alertes de budget .
Que sont les sauvegardes automatisées? Offrez-vous des sauvegardes toutes les heures?
Les sauvegardes automatisées sont une fonctionnalité avancée pour les clients de notre plan de facturation Blaze qui sauvegarde une fois par jour vos données Firebase Realtime Database et les télécharge sur Google Cloud Storage .
Nous n'offrons pas de sauvegardes horaires.
Offrez-vous des remises open source, à but non lucratif ou éducatives?
Notre plan Spark peut être utilisé par tout type d'individu ou d'organisation, y compris les organisations à but non lucratif, les écoles et les projets open source. Étant donné que ces plans incluent déjà des quotas généreux, nous n'offrons pas de rabais ou de plans spéciaux pour des projets open source, à but non lucratif ou éducatifs.
Proposez-vous des contrats d'entreprise, des tarifs, une assistance ou un hébergement d'infrastructure dédié?
Notre plan Blaze convient aux entreprises de toutes tailles, et notre SLA respecte ou dépasse la norme de l'industrie en matière d'infrastructure cloud. Cependant, nous n'offrons actuellement pas de contrats d'entreprise, de tarification ou d'assistance, et nous n'offrons pas non plus d'hébergement d'infrastructure dédiée (c'est-à-dire d'installations sur site) pour des services tels que notre base de données en temps réel. Nous travaillons dur pour ajouter certaines de ces fonctionnalités.
Proposez-vous des tarifs ad hoc? Je ne veux que le paiement à l'utilisation pour une ou deux fonctionnalités.
Nous proposons une tarification ad hoc dans le plan Blaze, où vous ne payez que pour les fonctionnalités que vous utilisez.
Comment les plans Firebase payants fonctionnent-ils avec les publicités? Existe-t-il des crédits publicitaires gratuits avec des forfaits payants?
Les plans tarifaires Firebase sont distincts des annonces, il n'y a donc pas de crédits publicitaires gratuits. 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 à partir de la console Ads.
Tarification 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: Cloud Build , Container Registry et Cloud Storage . L'utilisation de ces services sera facturée en plus des tarifs existants.
Vous ne serez facturé que pour le temps de calcul requis pour créer le conteneur d'exécution d'une fonction.
Cloud Storage, interopérant avec Container Registry , fournira un espace de stockage pour 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 USD par mois .
Pour en savoir plus sur la façon dont votre facture peut changer, veuillez consulter les éléments suivants
- Tarification de Cloud Functions : l'offre gratuite existante est inchangée.
- Tarification Cloud Build: Cloud Build propose un niveau gratuit.
- Tarification du registre des conteneurs .
Cloud Functions for Firebase propose-t-il toujours une utilisation gratuite?
Oui. Sur le plan Blaze, Cloud Functions fournit un niveau gratuit perpétuel pour les appels, le temps de calcul et le trafic Internet. Les 2 000 000 premiers appels, 400 000 Go-sec, 200 000 CPU-sec et 5 Go de trafic de sortie Internet sont fournis gratuitement chaque mois. Vous ne serez facturé que pour l'utilisation au-dessus de ces seuils.
Chaque opération de déploiement entraînera des frais à petite échelle pour l'espace de stockage utilisé pour le conteneur de la fonction. Par exemple, si vos fonctions consomment 1 Go de stockage via Container Registry, vous serez facturé 0,026 USD par mois . Si votre processus de développement dépend du déploiement de fonctions de test, vous pouvez réduire davantage les coûts en utilisant Firebase Local Emulator Suite pendant le développement.
Consultez les plans de tarification Firebase et les exemples de scénarios de tarification de Cloud Functions .
Firebase envisage-t-il d'augmenter les quotas et les limites de Cloud Functions pour Firebase?
Non. Il n'est pas prévu de modifier les quotas, sauf pour la suppression d'une limite de temps de construction maximum; au lieu de recevoir des erreurs ou des avertissements lorsque le quota de build quotidien de 120 minutes est atteint, vous serez facturé selon les conditions du forfait Blaze par répartition. Voir Quotas et limites .
Puis-je obtenir le crédit Google Cloud de 300 $?
Oui, vous pouvez créer un compte Cloud Billing dans la Google Cloud Console pour obtenir le crédit de 300 USD, puis associer ce compte Cloud Billing à un projet Firebase.
En savoir plus sur le crédit Google Cloud ici .
Notez que si vous faites cela, vous devez ensuite configurer le plan de facturation Blaze pay-as-you-go dans la console Firebase pour que votre projet continue de fonctionner une fois le crédit de 300 $ épuisé.
Je souhaite suivre un atelier de programmation pour en savoir plus sur Firebase. Pouvez-vous me donner un compte de facturation temporaire?
Non désolé. Vous pouvez utiliser l' émulateur Firebase pour le développement sans avoir de compte Cloud Billing. Vous pouvez également essayer de demander un essai gratuit de Google Cloud . Si vous ne parvenez toujours pas à payer votre facture en raison de ce changement, contactez l'assistance Firebase.
J'ai peur d'accumuler une énorme facture.
Vous pouvez configurer des alertes budgétaires dans Google Cloud Console pour aider à contrôler les coûts. Pour avoir une idée du coût des scénarios typiques, consultez les exemples de tarification de Cloud Functions .
Comment puis-je vérifier mes frais de facturation actuels?
Affichez le tableau de bord d' utilisation et de facturation dans la console Firebase.
J'utilise les extensions Firebase. Serai-je concerné par ce changement?
Oui. Étant donné que les extensions utilisent Cloud Functions , les extensions qui utilisent Node.js 10 ou version ultérieure seront soumises aux mêmes frais que les autres fonctions.
Pour utiliser des extensions basées sur Node.js 10 ou version ultérieure, vous devrez passer au plan de facturation Blaze pay-as-you-go. Vous serez facturé un petit montant (généralement environ 0,01 USD par mois ) pour les ressources Firebase requises par chaque extension que vous installez (même si elles ne sont pas utilisées), en plus des frais associés à votre utilisation des services Firebase.
Intimité
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. Il s'agit actuellement uniquement d'iOS, mais pourrait changer à l'avenir. Le SDK Firebase iOS inclut le framework FirebaseCoreDiagnostics
par défaut. Ce cadre est utilisé par Firebase pour collecter des informations sur l'utilisation et les diagnostics du SDK afin d'aider à hiérarchiser les futures améliorations du produit. FirebaseCoreDiagnostics
est facultatif, donc si vous souhaitez désactiver l'envoi des journaux de diagnostic Firebase, vous pouvez le faire en dissociant la bibliothèque de votre application. Vous pouvez parcourir la source complète, y compris les valeurs enregistrées, sur GitHub
Test A / B
Tests A / B: combien d'expériences puis-je créer et exécuter?
Vous avez droit à jusqu'à 300 expériences par projet, qui peuvent comprendre jusqu'à 24 expériences en cours d'exécution, le reste étant à l'état de brouillon ou terminé.
AdMob
AdMob: pourrais-je associer mes applications Windows à Firebase?
Les applications Windows ne sont actuellement pas prises en charge dans la console Firebase.
AdMob: pourquoi ne puis-je pas associer mon compte AdMob à partir de la console Firebase?
Vous pouvez associer une application AdMob à une application Firebase via la console AdMob. Pour associer le compte, vous devez être à la fois propriétaire du projet Firebase et administrateur AdMob.
AdMob: plusieurs utilisateurs peuvent-ils associer leur compte AdMob à une application Firebase?
Non, chaque compte AdMob n'aura qu'un seul utilisateur principal. L'utilisateur principal est le premier utilisateur à accepter les conditions d' utilisation de Firebase.
Analytique
Analytics: pourquoi Google Analytics est-il recommandé dans l'utilisation des produits Firebase?
Google Analytics est une solution d'analyse gratuite et illimitée qui fonctionne avec les fonctionnalités de Firebase pour fournir des informations puissantes. Il vous permet d'afficher les journaux d'événements dans Crashlytics, l'efficacité des notifications dans FCM, les performances des liens profonds pour les liens dynamiques et les données d'achat intégrées à partir de Google Play. Il optimise le ciblage d'audience avancé dans Remote Config, Predictions, etc.
Google Analytics agit comme une couche d'intelligence dans la console Firebase pour vous fournir des informations plus exploitables sur la façon de développer une application de haute qualité, d'élargir votre base d'utilisateurs et de gagner plus d'argent.
Pour commencer, lisez la documentation .
Analytics: comment segmenter les utilisateurs qui n'ont pas satisfait à certains critères?
Vous pouvez recadrer le problème en "ciblant négativement" ces utilisateurs. Par exemple, reformulez le problème en "Ne diffusez pas d'annonces auprès des personnes qui ont acheté quelque chose" et formez une audience de ces utilisateurs à cibler.
Analytics: comment contrôler la manière dont mes données Analytics sont partagées avec le reste de Firebase?
Par défaut, vos données Google Analytics sont utilisées pour améliorer d'autres fonctionnalités de Firebase et de Google. Vous pouvez contrôler le partage de vos données Google Analytics dans les paramètres de votre projet à tout moment. En savoir plus sur les paramètres de partage de données .
Analytics: quel est le nouveau compte Google Analytics entièrement mis à jour?
You can read more about the new Google Analytics upgrade in our blog post .
Analytics: How do I know if I'm using Google Analytics for Firebase or a fully upgraded Google Analytics account?
If you see a link to "View your data in Google Analytics" from the analytics dashboard in the Firebase console, then your project is using a fully upgraded Google Analytics account.
You can also check by viewing the Google Analytics card in the Firebase console (you can access this from settings > Project Settings > Integrations , then click Manage ). If you see a Linked Google Analytics account listed in the Your Google Analytics property section, your project is using the full Google Analytics experience in Firebase. If you do not see a Linked Google Analytics account , your project is using Google Analytics for Firebase.
Analytics: What will happen to my data when I upgrade to the new Google Analytics for Firebase?
This will not affect your existing Firebase project analytics data in the Firebase console.
You will be able to continue using the same dashboard and workflows you are using today, and you will also have access to some advanced features in Google Analytics.
Note that if you decide to enable cross-device reporting after making the upgrade, your data will be de-duplicated using the UserID. This may decrease some user counts in the Firebase console.
Analytics: What is Firebase User Segmentation Storage?
Firebase User Segmentation Storage stores audience lists you've created to provide targeting information to other Firebase services that use them, such as Crashlytics, FCM, Predictions, and more.
Analytics: Why don't I see any data after unlinking my app from Google Analytics?
Your analytics data resides within the Google Analytics property - not within the Firebase project. If you delete or unlink the property, then your data is unlinked from your project as well. The data still resides in that property, however, and you can always relink it to your project.
Creating a new Google Analytics account (and new property) will result in having a blank analytics dashboard in the Firebase console.
Analytics: Why do I get an error when trying to upgrade my project to the new Google Analytics experience?
If you are experiencing and error when upgrading, such as:
The operation has failed (Reason: Requested entity already exists)
or
The operation has failed (Reason: Precondition check failed)
This means that there is an association between your project and an already existing Google Analytics property. You can unlink the property, delete it, or upgrade through the Google Analytics interface.
If this is still an issue, you can use the REST API to unlink by using the removeAnalytics
method , then use the addGoogleAnalytics
method to link a new property.
You can then move the data from one property to another .
Analytics: Will audiences and/or events defined in Google Analytics be available on the Firebase console?
Your audiences and user properties will be synced. For some features, you'll need to use the Google Analytics interface, such as segmentation and closed funnels. You can access the Google Analytics interface directly via deep-links from the Firebase console. Any changes you make from the Firebase console can also be performed in Google Analytics, and those changes will be reflected in Firebase.
App Indexing
App Indexing: Can Google Search index multiple languages for a single app?
Google Search supports the following multi-language cases:
- The associated website has unique URLs for each language, and there is one corresponding app HTTP URL for each web URL.
- The associated website has unique URLs for each language, but there is only one app HTTP URL. The app uses system language settings to display the correct language content.
- The associated website has one URL for all languages (or it supports only one language), and there is one corresponding app URL. The website and the application must display the content in the same language when the user has set no preference.
App Indexing: Can App Indexing support multiple websites for an app?
Yes. Make sure that each associated website is verified for the Android app via the Google Play Console . Learn how to verify your app .
App Indexing: Do sitemaps need to be added via the Search Console?
iOS does not require sitemaps, and Android does not require them as long as your app supports HTTP URLs. For custom URLs, you do not need to add sitemaps via Search Console. You can reference sitemaps in your robots.txt
file and Google Search will use them. Learn more about managing sitemaps . However, submitting a sitemap through Search Console lets you see statistics on submitted and indexed HTTP URLs in Search Console.
Authentication
Firebase Authentication: Which countries are supported for phone authentication?
Firebase Authentication supports phone number verification across the the world, but not all networks reliably deliver our verification messages. The following countries have good rates of delivery, and should be expected to work well for phone number sign in.
Country | Code |
---|---|
AD | Andorra |
AE | United Arab Emirates |
AF | Afghanistan |
AG | Antigua and Barbuda |
AL | Albania |
AM | Armenia |
AO | Angola |
AR | Argentina |
AS | American Samoa |
AT | Austria |
AU | Australia |
AW | Aruba |
AZ | Azerbaijan |
BA | Bosnia and Herzegovina |
BB | Barbados |
BD | Bangladesh |
BE | Belgium |
BF | Burkina Faso |
BG | Bulgaria |
BJ | Benin |
BM | Bermuda |
BN | Brunei Darussalam |
BO | Bolivia |
BR | Brazil |
BS | Bahamas |
BT | Bhutan |
BW | Botswana |
BY | Belarus |
BZ | Belize |
CA | Canada |
CD | Congo, (Kinshasa) |
CF | Central African Republic |
CG | Congo (Brazzaville) |
CH | Switzerland |
CI | Côte d'Ivoire |
CK | Cook Islands |
CL | Chile |
CM | Cameroon |
CO | Colombia |
CR | Costa Rica |
CV | Cape Verde |
CW | Curaçao |
CY | Cyprus |
CZ | Czech Republic |
DE | Germany |
DJ | Djibouti |
DK | Denmark |
DM | Dominica |
DO | Dominican Republic |
DZ | Algeria |
EC | Ecuador |
EG | Egypt |
ES | Spain |
ET | Ethiopia |
FI | Finland |
FJ | Fiji |
FK | Falkland Islands (Malvinas) |
FM | Micronesia, Federated States of |
FO | Faroe Islands |
FR | France |
GA | Gabon |
GB | United Kingdom |
GD | Grenada |
GE | Georgia |
GF | French Guiana |
GG | Guernsey |
GH | Ghana |
GI | Gibraltar |
GL | Greenland |
GM | Gambia |
GP | Guadeloupe |
GQ | Equatorial Guinea |
GR | Greece |
GT | Guatemala |
GY | Guyana |
HK | Hong Kong, SAR China |
HN | Honduras |
HR | Croatia |
HT | Haiti |
HU | Hungary |
ID | Indonesia |
IE | Ireland |
IL | Israel |
IM | Isle of Man |
IN | India |
IQ | Iraq |
IT | Italy |
JE | Jersey |
JM | Jamaica |
JO | Jordan |
JP | Japan |
KE | Kenya |
KG | Kyrgyzstan |
KH | Cambodia |
KM | Comoros |
KN | Saint Kitts and Nevis |
KR | Korea (South) |
KW | Kuwait |
KY | Cayman Islands |
KZ | Kazakhstan |
LA | Lao PDR |
LB | Lebanon |
LC | Saint Lucia |
LI | Liechtenstein |
LK | Sri Lanka |
LS | Lesotho |
LT | Lithuania |
LU | Luxembourg |
LV | Latvia |
LY | Libya |
MA | Morocco |
MD | Moldova |
ME | Montenegro |
MF | Saint-Martin (French part) |
MG | Madagascar |
MK | Macedonia, Republic of |
MM | Myanmar |
MN | Mongolia |
MO | Macao, SAR China |
MS | Montserrat |
MT | Malta |
MU | Mauritius |
MW | Malawi |
MX | Mexico |
MY | Malaysia |
MZ | Mozambique |
NA | Namibia |
NC | New Caledonia |
NE | Niger |
NF | Norfolk Island |
NG | Nigeria |
NI | Nicaragua |
NL | Netherlands |
NO | Norway |
NP | Nepal |
NZ | New Zealand |
OM | Oman |
PA | Panama |
PE | Peru |
PG | Papua New Guinea |
PH | Philippines |
PK | Pakistan |
PL | Poland |
PM | Saint Pierre and Miquelon |
PR | Puerto Rico |
PS | Palestinian Territory |
PT | Portugal |
PY | Paraguay |
QA | Qatar |
RE | Réunion |
RO | Romania |
RS | Serbia |
RU | Russian Federation |
RW | Rwanda |
SA | Saudi Arabia |
SC | Seychelles |
SE | Sweden |
SG | Singapore |
SH | Saint Helena |
SI | Slovenia |
SK | Slovakia |
SL | Sierra Leone |
SN | Senegal |
SR | Suriname |
ST | Sao Tome and Principe |
SV | El Salvador |
SZ | Swaziland |
TC | Turks and Caicos Islands |
TG | Togo |
TH | Thailand |
TL | Timor-Leste |
TM | Turkmenistan |
TO | Tonga |
TR | Turkey |
TT | Trinidad and Tobago |
TW | Taiwan, Republic of China |
TZ | Tanzania, United Republic of |
UA | Ukraine |
UG | Uganda |
US | United States of America |
UY | Uruguay |
UZ | Uzbekistan |
VC | Saint Vincent and Grenadines |
VE | Venezuela (Bolivarian Republic) |
VG | British Virgin Islands |
VI | Virgin Islands, US |
VN | Viet Nam |
WS | Samoa |
YE | Yemen |
YT | Mayotte |
ZA | South Africa |
ZM | Zambia |
ZW | Zimbabwe |
Cloud Functions
Cloud Functions runtime support
Why is the Node.js 8 runtime deprecated?
On Dec 31, 2019, Node.js 8 was marked end-of-life by the Node.js Foundation . At that time, the Node.js Foundation stopped issuing security releases for Node.js 8. Because of this, we recommend that you update to Node.js 10 or later as soon as you can.
What happens if a Node.js 8 function is left running after the removal of Node.js 8 support? Will it work indefinitely?
No it will not. Deployment of functions to the Node.js 8 runtime was disabled in the Firebase CLI on December 15, 2020. Execution of already-deployed functions will stop at some point in the future; if you have deployed functions to the Node.js 8 runtime, we recommend that you upgrade to the Node.js 12 runtime .
How do I upgrade to Node.js 12?
- Make sure you're on the Blaze pay-as-you-go billing plan .
- Make sure you are using Firebase CLI version 8.1.0 or later.
- Change the
engines
field in your functions'package.json
. - Optionally, test your changes using the Firebase emulator .
- Redeploy functions using the Firebase CLI v8.1.0 or later.
How can I make sure I deployed my functions to the Node.js 12 runtime?
In the Firebase console, go to the functions dashboard and check the runtime column.
I use Firebase Extensions. Will I be affected by this change?
Yes. Since extensions use Cloud Functions , the runtime of your extensions will need to be updated on the same timeline as Cloud Functions.
We recommend that you upgrade your Firebase project to the Blaze plan and update to the latest version of each extension installed in your project. You can upgrade your projects' extensions on the Firebase console or CLI .
Cloud Messaging
Cloud Messaging: What's the difference between the Notifications composer and Cloud Messaging?
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Capabilities | Notifications composer | Cloud Messaging | |
---|---|---|---|
Target | Single device | ||
Clients subscribed to topics (ie weather) | |||
Clients in predefined user segment (app, version, language) | |||
Clients in specified analytics audiences | |||
Clients in device groups | |||
Upstream from client to server | |||
Message Type | Notifications up to 2kb | ||
Data messages up to 4kb | |||
Delivery | Immediate | ||
Future client device local time | |||
Analytics | Built-in Notifications analytics collection and funnel analytics |
Cloud Messaging: Apple announced they're decprecating the legacy binary protocol for APNs. Do I need to do anything?
No. Firebase Cloud Messaging swtiched to the HTTP/2-based APNs protocol in 2017. If you are using FCM to send notifications to iOS devices, there should be no action required on your part.
Cloud Messaging: Do I need to use other Firebase services in order to use FCM?
You can use Firebase Cloud Messaging as a standalone component, in the same manner as you did with GCM, without using other Firebase services.
Cloud Messaging: I am an existing Google Cloud Messaging (GCM) developer. Should I move to Firebase Cloud Messaging?
FCM is the new version of GCM under the Firebase brand. It inherits GCM's core infrastructure, with new SDKs to make Cloud Messaging development easier.
Benefits of upgrading to FCM SDK include:
- Simpler client development. You no longer have to write your own registration or subscription retry logic.
- An out-of-the-box notification solution. You can use the Notifications composer, a serverless notifications solution with a web console that lets anyone send notifications to target specific audiences based on insights from Google Analytics for Firebase.
To upgrade from GCM SDKs to FCM SDKs, see the guides for migrating Android and iOS apps.
Cloud Messaging: Why do my targeted devices apparently fail to receive messages?
When it looks like devices haven't successfully received messages, check first for these two potential causes:
Foreground message handling for notification messages . Client apps need to add message handling logic to handle notification messages when the app is in the foreground on the device. See the details for iOS and Android .
Network firewall restrictions . If your organization has a firewall that restricts the traffic to or from the Internet, you need to configure it to allow connectivity with FCM in order for your Firebase Cloud Messaging client apps to receive messages. The ports to open are:
- 5228
- 5229
- 5230
FCM usually uses 5228, but it sometimes uses 5229 and 5230. FCM does not provide specific IPs, so you should allow your firewall to accept outgoing connections to all IP addresses contained in the IP blocks listed in Google's ASN of 15169 .
Cloud Messaging: I have implemented onMessageReceived
in my Android app, but it is not being called.
When your app is in the background, notification messages are displayed in the system tray, and onMessageReceived
is not called. For notification messages with a data payload, the notification message is displayed in the system tray, and the data that was included with the notification message can be retrieved from the intent launched when the user taps on the notification.
For more information, see Receive and handle messages .
Notifications composer: What's the difference between the Notifications composer and Cloud Messaging?
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
Here's a comparison of the messaging capabilities provided by Firebase Cloud Messaging and the Notifications composer:
Capabilities | Notifications composer | Cloud Messaging | |
---|---|---|---|
Target | Single device | ||
Clients subscribed to topics (ie weather) | |||
Clients in predefined user segment (app, version, language) | |||
Clients in specified analytics audiences | |||
Clients in device groups | |||
Upstream from client to server | |||
Message Type | Notifications up to 2kb | ||
Data messages up to 4kb | |||
Delivery | Immediate | ||
Future client device local time | |||
Analytics | Built-in Notifications analytics collection and funnel analytics |
Notifications composer: I am an existing Google Cloud Messaging (GCM) developer, and I want to use the Notifications composer. What should I do?
The Notifications composer is an out-of-the-box solution that lets anyone send notifications to target specific audiences based on insights from Google Analytics for Firebase. Also, the Notifications composer provides funnel analysis for every message, allowing easy evaluation of notification effectiveness.
If you are an existing GCM developer, to use the Notifications composer you have to upgrade from GCM SDKs to FCM SDKs. See the guides for migrating Android and iOS apps.
Cloud Storage
Cloud Storage: Why can't I use Cloud Storage?
Cloud Storage for Firebase creates a default bucket in the App Engine free tier. This allows you to quickly get up and running with Firebase and Cloud Storage for Firebase, without having to put in a credit card or enable a billing account. It also allows you to easily share data between Firebase and a Google Cloud project.
There are, however, two known cases where this bucket cannot be created and you will be unable to use Cloud Storage for Firebase:
- A project imported from Google Cloud which had a App Engine Master/Slave Datastore application.
- A project imported from Google Cloud which has domain prefixed projects. For example:
domain.com:project-1234
.
There are currently no workarounds to these issues, and we recommend that you create a new project in the Firebase console and enable Cloud Storage for Firebase in that project.
Cloud Storage: Why do I see new service account IDs associated with my Firebase projects that use Cloud Storage?
Firebase uses service accounts to operate and manage services without sharing user credentials. When you create a Firebase project, you might notice that a number of service accounts are already available in your project.
If you used Cloud Storage before September 15, 2020, you may see the following legacy service account that is used to manage your bucket: firebase-storage@system.gserviceaccount.com
.
After September 15, 2020, Cloud Storage for Firebase buckets may include an additional new service account: service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
You can view all service accounts associated with your project in the Firebase console, on the Service accounts tab .
Removing the new service account
We strongly discourage you from removing the new service account because if you do so, you will not be able to take advantage of upcoming security improvements.
However, if you prefer, you can disable the API or remove access from the new service account. Removing this account may block access to your Cloud Storage bucket from your apps.
Adding the new service account
If you removed the new service account or disabled the API and want to add them back, follow the instructions provided in Creating and managing service accounts for using the Google Cloud Console to add service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com
to the set of service accounts for your project.
Crashlytics
Visit the Crashlytics troubleshooting & FAQ page for helpful tips and answers to more FAQs.
Crash Reporting: Why are there fewer crash reports in Analytics than Crash Reporting?
Crash Reporting creates a separate background process to upload crash info. If your app extends the Android Application class, you must ensure it is multi-process safe. Otherwise, it may cause concurrency issues. When an app extends an Application object, this object gets instantiated for each process in a multi-process app. Consider the following when adding Crash Reporting to your app:
- If the implementation of this object accesses any out-of-process state (a database, the file system, shared preferences, etc), or performs other actions not safe for a multi-process environment, concurrency issues might arise. This is because multiple instances of the Application object may run simultaneously.
- Many third-party libraries keep out-of-process state (eg in a local database) and are subject to the same concurrency issues if they are initialized from the Application object. If your app fits this description and you plan to use Crash Reporting in your app, we strongly encourage you to consider moving the Application logic to Content Providers, or to Android Activities. Any Application logic that is not safe for a multi-process environment can have unintended effects on your app.
Crash Reporting automatically exports captured errors to Google Analytics as app_exception events. Currently on Android, you may see a significant discrepancy between the number of Crash Reporting errors and Analytics app_exception events.
Dynamic Links
Dynamic Links: Why does my Android app access each Dynamic Link twice?
The getInvitation
API clears the saved Dynamic Link to prevent it from being accessed twice. Be sure to call this API with the autoLaunchDeepLink
parameter set to false
in each of the deep link activities to clear it for the case when the activity is triggered outside the main activity.
Hosting
Hosting: Why does my Hosting release history table in the Firebase console show file counts that are more than what my local project actually has?
Firebase automatically adds extra files containing metadata about the Hosting site, and these files are included in the total file count for the release.
Hosting: What's the largest file size that I can deploy to Firebase Hosting?
Hosting has a maximum size limit of 2 GB for individual files.
We recommend storing larger files using Cloud Storage , which offers a maximum size limit in the terabyte range for individual objects.
Hosting: How many Hosting sites can I have per Firebase project?
The Firebase Hosting multisite feature supports a maximum of 36 sites per project.
Performance Monitoring
Visit the Performance Monitoring troubleshooting & FAQ page for helpful tips and answers to more FAQs.
Performance Monitoring: How many custom URL patterns can I create?
You can create up to 400 total custom URL patterns per app and up to 100 custom URL patterns per domain for that app.
Performance Monitoring: Why am I not seeing real time display of performance data?
To view real time performance data, make sure that your app uses a Performance Monitoring SDK version that's compatible with real time data processing.
- iOS — v7.3.0 or later
- Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
- Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
Predictions
Predictions: I just added Google Analytics to my app. When should I expect to see predictions in the console?
Predictions are based on your users' behavior, and the more history that's available, the better. At a bare minimum, Firebase Predictions needs two weeks of data: one week of activity to train on, and then one week to see what that activity led to (churning, spending, etc.). Beyond the first two weeks, the quality of the predictions will typically increase as Predictions observes longer sequences of user activity.
Predictions: How long does it take for predictions to be made about a new user?
For an app that is already instrumented with Google Analytics and trained with baseline data, predictions can be made for new users as early as the next day after they start using the app.
Realtime Database
Realtime Database: Why was my Realtime Database reported bandwidth lower than average between September 2016 and March 2017?
For our bandwidth calculations, we normally include SSL encryption overhead (based on layer 5 of the OSI model). However, in September 2016, we introduced a bug that caused our bandwidth reporting to ignore encryption overhead. This might have resulted in artificially low reported bandwidth and bills on your account for a few months.
We released a fix for the bug in late March 2017, returning bandwidth reporting and billing to their normal levels.
Realtime Database: What are the scaling limitations of the Realtime Database?
Each Realtime Database instance has limits on the number of write operations per second. For small writes, this limit is approximately 1000 write operations per second. If you are approaching this limit, batching operations using multi-path updates can help you achieve higher throughput.
In addition, each database instance has a cap on the number of simultaneous database connections . Our default limits are large enough for most applications. If you are building an app that requires additional scale, you may need to shard your application across multiple database instances for added scale. You may also consider Cloud Firestore as an alternative database.
Realtime Database: What can I do if I'm over my Realtime Database usage limits?
If you've received an email alert or notification in the Firebase console that you've exceeded your Realtime Database usage limits, you can address it based on the usage limit you've exceeded. To see your Realtime Database usage, go to the Realtime Database Usage dashboard in the Firebase console.
If you're over your download limit, you can upgrade your Firebase billing plan or wait until your download limit resets at the start of your next billing cycle. To decrease your downloads, try the following steps:
- Add queries to limit the data that your listen operations return.
- Check for unindexed queries.
- Use listeners that only download updates to data — for example,
on()
instead ofonce()
. - Use security rules to block unauthorized downloads.
If you're over your storage limit, upgrade your billing plan to avoid service disruptions. To reduce the amount of data in your database, try the following steps:
- Run periodic cleanup jobs.
- Reduce any duplicate data in your database.
Note that it may take some time to see any data deletions reflected in your storage allotment.
If you're over your simultaneous database connections limit, upgrade your plan to avoid any service disruptions. To manage simultaneous connections to your database, try connecting via users via the REST API if they don't require a realtime connection.
Remote Config
Remote Config: Why don't fetched values change the behavior and appearance of my app?
Unless you fetch values with fetchAndActivate()
, values are stored locally but not activated. To activate fetched values so that they can take effect, call activate
. This design lets you control when the behavior and appearance of your app changes, because you can choose when to call activate
. After you call activate
, your app source code determines when updated parameter values are used.
For example, you could fetch values and then activate them the next time a user starts your app, which removes the need to delay app startup while your app waits for fetched values from the service. Changes to your app's behavior and appearance then occur when your app uses the updated parameter values.
To learn more about the Remote Config API and usage model, see Remote Config API Overview .
Remote Config: I am making a lot of fetch requests while developing my app. Why doesn't my app always get the latest values from the service when it sends fetch requests?
During app development, you might want to fetch and activate configs very frequently (many times per hour) to let you rapidly iterate as you develop and test your app. To accommodate rapid iteration on a project with up to 10 developers, you can temporarily set a FirebaseRemoteConfigSettings
object with a low minimum fetch interval ( setMinimumFetchIntervalInSeconds
) in your app.
Remote Config: How quickly does the Remote Config service return fetched values after my app sends a fetch request?
Devices usually receive fetched values in less than a second, and often receive fetched values in milliseconds. The Remote Config service handles fetch requests within milliseconds, but the time required to complete a fetch request will depend on the network speed of the device and the latency of the network connection used by the device.
If your goal is to make fetched values take effect in your app as soon as possible, but without creating a jarring user experience, consider adding calls to fetchAndActivate
each time that your app does a full screen refresh.
Test Lab
Visit the Test Lab troubleshooting page for helpful tips and answers to FAQs.