Envoyer des messages aux utilisateurs à l'aide de FCM et de FIAM

1. Avant de commencer

Dans cet atelier de programmation, vous allez apprendre à interagir avec les utilisateurs, qu'ils utilisent votre application au premier plan ou en arrière-plan.

206c7ecece550bde.png

Prérequis

Aucune

Points abordés

  • Ajouter Firebase à votre application Android
  • Ajouter des dépendances FCM et FIAM
  • Envoyer un message FCM de test à votre application
  • Envoyer un message FIAM test à votre application

Prérequis

  • Android Studio 4.1
  • Appareil ou émulateur Android

2. Commencer

Obtenir l'exemple de code

Clonez le dépôt GitHub à partir de la ligne de commande :

Importer l'application de démarrage

Dans Android Studio, sélectionnez le répertoire codelab-fcm-and-fiam ( dossier_android_studio.png). Il s'agit de celui cloné à l'étape précédente (File > Open > .../codelab-fcm-and-fiam).

Le projet FcmAndFiam devrait maintenant être ouvert dans Android Studio. Si un avertissement concernant un fichier google-services.json manquant s'affiche, ne vous inquiétez pas. Elle sera ajoutée à l'étape suivante.

3. Créer un projet dans la console Firebase

Ajouter Firebase au projet

  1. Accédez à la console Firebase.
  2. Sélectionnez Ajouter un projet.
  3. Sélectionnez ou saisissez un nom de projet.
  4. Suivez les étapes de configuration restantes dans la console Firebase, puis cliquez sur Créer un projet (ou sur "Ajouter Firebase" si vous utilisez un projet Google existant).
  5. Sur l'écran "Vue d'ensemble" de votre nouveau projet, cliquez sur l'icône Android pour lancer le workflow de configuration.
  6. Saisissez le nom du package de l'atelier de programmation: com.google.firebase.codelab.fcmandfiam

Ajouter le fichier google-services.json à votre application

Après avoir ajouté le nom du package, cliquez sur Enregistrer l'application, puis sur Télécharger google-services.json pour obtenir votre fichier de configuration Firebase pour Android, puis copiez le fichier google-services.json dans le répertoire app de votre projet. Une fois le fichier téléchargé, vous pouvez cliquer sur Skip (Ignorer) pour passer aux étapes suivantes affichées dans la console (elles ont déjà été effectuées pour vous dans le projet build-android-start).

Ajouter le plug-in Google-Services à votre application

Le plug-in google-services utilise le fichier google-services.json pour configurer votre application pour qu'elle utilise Firebase. La dépendance du plug-in google-services et le plug-in lui-même doivent déjà être ajoutés respectivement aux fichiers de compilation au niveau du projet et de l'application. Confirmez les entrées suivantes:

build.gradle

buildscript {
  ...
  dependencies {
    ...
    classpath 'com.google.gms:google-services:4.3.8'
  }
}

app/build.gradle

plugins {
  ...
  id: 'com.google.gms.google-services'
}

Ajouter des dépendances

FCM et FIAM nécessitent les dépendances suivantes. Ces dépendances doivent déjà être ajoutées au fichier de compilation au niveau de l'application. Vérifiez que les dépendances suivantes sont ajoutées :

app/build.gradle

dependencies {
  ...
  implementation platform('com.google.firebase:firebase-bom:28.4.2')
  implementation 'com.google.firebase:firebase-analytics'
  implementation 'com.google.firebase:firebase-messaging'
  implementation 'com.google.firebase:firebase-inappmessaging-display'
}

Synchroniser votre projet avec des fichiers Gradle

Pour vous assurer que toutes les dépendances sont disponibles pour votre application, vous devez synchroniser votre projet avec les fichiers Gradle à ce stade. Sélectionnez Fichier > Synchroniser le projet avec les fichiers Gradle dans la barre d'outils d'Android Studio.

4. Identifiants de journal

Firebase Cloud Messaging et Firebase In App Messaging utilisent tous deux des identifiants pour envoyer des messages aux applications. FCM utilise un jeton d'enregistrement et FIAM utilise un ID d'installation.

  1. Dans MainActivity.kt, remplacez TODO par le code ci-dessous pour consigner les identifiants nécessaires à l'envoi de messages:
FirebaseMessaging.getInstance().token.addOnCompleteListener { regTokenTask ->
   if (regTokenTask.isSuccessful) {
       Log.d(TAG, "FCM registration token: ${regTokenTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve registration token",
           regTokenTask.exception)
   }
}
FirebaseInstallations.getInstance().id.addOnCompleteListener { installationIdTask ->
   if (installationIdTask.isSuccessful) {
       Log.d(TAG, "Firebase Installations ID: ${installationIdTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve installations ID",
           installationIdTask.exception)
   }
}
  1. Connectez votre appareil Android, puis cliquez sur Run (Exécuter) execute.png dans la barre d'outils d'Android Studio. En appuyant sur le bouton Log Identifiers (Identifiants de journal), le jeton d'enregistrement FCM et l'ID d'installation Firebase sont enregistrés dans logcat. Le résultat doit se présenter comme suit :
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
  FCM registration token: emMc5LART6GV7...r0Q

5. Envoyer un message FCM de test

Les messages FCM peuvent être envoyés à partir de la console Firebase et de l'API REST FCM. Dans cet atelier de programmation, nous allons rédiger un message de notification FCM et l'envoyer à notre appareil. Les messages de notification sont ceux qui s'affichent dans la zone de notification du système. Envoyez un message FCM de test :

  1. Assurez-vous que l'application est exécutée en arrière-plan (accédez à l'écran d'accueil)
  2. Accédez à la console Firebase, puis sélectionnez Cloud Messaging dans le panneau de navigation de gauche.
  3. Sélectionnez Envoyer votre premier message.
  4. Ajoutez un titre et un corps au message, puis cliquez sur Envoyer un message test.

207ced65f5245ada.png

  1. Ajoutez le jeton d'enregistrement FCM, puis cliquez sur Tester.

f3556c6a8a6453fe.png

  1. Observer la notification d'affichage sur l'appareil
  2. Appuyer sur la notification ouvre l'application

6. Envoyer un message FIAM de test

La messagerie dans l'application Firebase peut être déclenchée à la suite de divers événements utilisateur. Le message de test utilise l'événement d'ouverture de l'application pour déclencher le message dans l'application. Pour envoyer un message FIAM test:

  1. Assurez-vous que l'application est exécutée en arrière-plan (accédez à l'écran d'accueil)
  2. Accédez à la console Firebase, puis sélectionnez "Messagerie dans l'application" dans le panneau de navigation de gauche.
  3. Sélectionnez Créer votre première campagne.
  4. Sélectionnez la campagne de bannières en haut de page, puis saisissez le titre et le corps du message.
  5. Cliquez sur Tester sur l'appareil.

69f6ea5efff240d1.png

  1. Ajoutez l'ID d'installation, puis cliquez sur Test.

24b101edfab47144.png

  1. Rouvrir l'application
  2. Observer le message dans l'application

7. Félicitations

Félicitations, vous avez envoyé des messages FCM et FIAM. Vous savez maintenant comment interagir avec vos utilisateurs, qu'ils utilisent votre application au premier plan ou en arrière-plan.

Complément d'informations

Étapes suivantes

  • Envoyer des messages aux utilisateurs dans votre propre application Android

Documents de référence