# Créer un projet Firebase

> Découvrez comment configurer un projet Firebase pour utiliser les services d'authentification, notifications push, et les analytics offerts par Google, pour améliorer votre application mobile sur iOS ou Android.

https://docs.pandasuite.com/fr/essentials/integrations/create-a-firebase-project/

**Firebase est la plateforme de développement d'applications mobiles proposée par Google qui offre une multitude de services dont l'authentification, les push notifications sur Android, les analytics et bien d'autres.**

Vous avez besoin de créer un projet Firebase si vous souhaitez bénéficier de ces services pour votre application : [authentification](https://docs.pandasuite.com/fr/essentials/components/authentication/) et [session Firebase](https://docs.pandasuite.com/fr/essentials/components/firebase-session/), [push notifications pour Android](https://docs.pandasuite.com/fr/essentials/deployment-services/push-notifications-to-ios-and-android-devices/) et [analytics pour iOS & Android](https://docs.pandasuite.com/fr/essentials/integrations/connect-to-firebase-analytics/).

## Créer un projet firebase

La création de compte sur Firebase est gratuit sous réserve d'un certain volume ([détails par ici](https://firebase.google.com/pricing)). Le plan Spark de Firebase est gratuit et offre de nombreuses fonctionnalités pour débuter. En fonction des besoins croissants, vous pouvez alors opter pour le Plan Blaze.

Rendez-vous sur <https://console.firebase.google.com/>

Connectez-vous à l'aide de votre compte Google.

Créez un nouveau projet : il faut créer un nouveau projet par application.

[Image : Page d'accueil de la console Firebase, avec le bouton Créer un projet qui lance la création d'un nouveau projet]

Choisissez un nom. Suivez les étapes et validez.

[Image : Étape 1 de la création d'un projet Firebase : le champ Nom du projet, rempli avec panda-auth, puis le bouton Continuer]

Si vous souhaitez activer les analytics, vous devez sélectionner un compte Google Analytics associé à votre compte.

[Image : Étape Google Analytics : l'option Activer Google Analytics pour ce projet, désactivée ici, puis le bouton Créer un projet]

Une fois que le projet est créé, vous êtes réorientés vers le dashboard.

[Image : Dashboard du projet Firebase Test, qui invite à ajouter Firebase à une app via les icônes iOS, Android, Web, Unity et Flutter]

## Ajouter une app iOS

Si votre application est déjà publiée sous un format iOS et/ou Android et que vous souhaitez bénéficier des [analytics](https://docs.pandasuite.com/fr/essentials/deployment-services/connect-your-app-to-an-analytics-tool/) ou des [push notifications](https://docs.pandasuite.com/fr/essentials/deployment-services/push-notifications-to-ios-and-android-devices/), vous devez également ajouter votre application dans Firebase : iOS, Android ou les deux en fonction de votre diffusion.

> **Info**
>
> Veuillez impérativement à débuter par l'app iOS, puis à créer l'app Android
> ensuite.

Voici comment ajouter une app iOS existante sur Firebase.

Sur la console Firebase, cliquez sur l'icône **iOS**

Dans le formulaire, insérez le [Bundle ID](https://docs.pandasuite.com/fr/essentials/mobile-publishing/ios/register-an-app-id-and-bundle-id-for-your-ios-app/) de votre application. Les autres champs sont facultatifs.

[Image : Formulaire Add Firebase to your Apple app : le champ Apple bundle ID, encadré en rouge ; les autres champs sont facultatifs]

Cliquez sur le bouton **Télécharger GoogleService-Info.plist**

[Image : Deuxième étape de l'ajout de l'app iOS dans Firebase : le bouton Télécharger GoogleService-Info.plist, puis le bouton Suivant]

Pour les étapes suivantes, cliquez sur **Suivant** et retournez sur la console

[Image : Dernière étape de l'ajout de l'app iOS dans Firebase : le bouton Continue to console pour retourner sur la console]

Il est ensuite nécessaire d'associer ces paramètres à votre application PandaSuite.

Rendez-vous [dans votre dashboard PandaSuite](https://pandasuite.com/dashboard/publish) dans la section **Apps** > **Paramètres** > **Configuration Firebase**

[Image : Onglet Configuration Firebase des paramètres de l'app : le bouton Importer de la configuration automatique est encadré]

Importez le fichier .plist, les champs se remplissent automatiquement

[Image : Configuration Firebase après l'import du .plist : Clé API, ID Expéditeur, ID de l'application Firebase (1:…:ios:…) et ID Projet, remplis et encadrés]

L’import sauvegarde automatiquement la configuration Firebase. Si vous modifiez ensuite un champ manuellement, cliquez sur **Enregistrer**.

## Ajouter une app Android

Voici comment ajouter une app Android existante

Sur la console, cliquez sur **Ajouter une app** et l'icône **Android**

[Image : Dashboard Firebase après un clic sur Ajouter une app : les icônes de plateforme, dont Android, à côté de Select a platform]

> **Attention : Distinguez les deux identifiants Android**
>
> Le **Nom du package Android** identifie l’app Android et ressemble à
> `com.company.app`. L’**ID de l’application Firebase** identifie l’app dans
> Firebase et ressemble à `1:1234567890:android:abcdef`. Ces valeurs ne sont pas
> interchangeables.

Dans le formulaire Firebase, insérez le [nom du package](https://docs.pandasuite.com/fr/essentials/mobile-publishing/android/export-an-apk-or-aab-file/) de votre application. Il doit correspondre exactement au **Nom du package Android** affiché pour le dernier APK dans PandaSuite sous **Apps** > **Paramètres** > **Configuration Firebase**. Les autres champs sont facultatifs.

Générez un build Android avant d’importer la configuration Firebase afin que PandaSuite puisse identifier son **Nom du package Android**. L’import peut ainsi sélectionner le client correspondant lorsque `google-services.json` contient plusieurs apps Android.

[Image : Formulaire Add Firebase to your Android app : le champ Android package name, suivi de deux champs facultatifs]

Cliquez sur le bouton **Télécharger google-services.json**

[Image : Deuxième étape de l'ajout de l'app Android dans Firebase : le bouton Télécharger google-services.json, puis le bouton Suivant]

Pour les étapes suivantes, cliquez sur **Suivant** et retournez sur la console

Il est ensuite nécessaire d'associer ces paramètres à votre application PandaSuite.

Rendez-vous dans votre dashboard PandaSuite dans la section **Apps** > **Paramètres** > **Configuration Firebase**

[Image : Onglet Configuration Firebase des paramètres de l'app : le Nom du package Android com.pandasuite.… est encadré]

Importez `google-services.json` : les champs se remplissent et sont sauvegardés automatiquement. Lorsqu’un **Nom du package Android** est disponible, PandaSuite sélectionne le client dont `client_info.android_client_info.package_name` lui correspond, puis renseigne l’**ID de l’application Firebase** avec `client_info.mobilesdk_app_id`. Sans build Android existant, l’import utilise le premier client du fichier.

Après l’import, vérifiez que :

- le **Nom du package Android** utilise un format de package tel que `com.company.app` ;
- l’**ID de l’application Firebase** utilise le format long `1:…:android:…`.

[Image : Configuration Firebase après l'import : le champ ID de l'application Firebase, au format long 1:…:android:…, est encadré]

> **Info**
>
> Si vous avez déjà importé le fichier .plist correspondant à l'app iOS dans
> l'interface, remplacez par le fichier .json de l'app Android.

Générez un nouveau build Android. PandaSuite expose l’**ID de l’application Firebase** importé à Firebase sous la forme de la ressource Android `google_app_id`. Si vous modifiez un champ manuellement après l’import, cliquez sur **Enregistrer** avant de générer le build.
