1. Hinweis
In diesem Codelab erfahren Sie, wie Sie die Möglichkeit hinzufügen, mit Nutzern zu interagieren, unabhängig davon, ob sie Ihre App im Vordergrund oder im Hintergrund verwenden.
Voraussetzungen
Keine
Aufgaben in diesem Lab
- Firebase zu Ihrer Android-App hinzufügen
- FCM- und FIAM-Abhängigkeiten hinzufügen
- Test-FCM-Nachricht an Ihre App senden
- Test-FIAM-Nachricht an Ihre App senden
Voraussetzungen
- Android Studio 4.1
- Android-Gerät oder Emulator
2. Jetzt starten
Beispielcode abrufen
Klonen Sie das GitHub-Repository über die Befehlszeile:
Start-App importieren
Wählen Sie in Android Studio das Verzeichnis codelab-fcm-and-fiam
( ) aus. Das ist das Verzeichnis, das Sie im vorherigen Schritt geklont haben (File > Open > .../codelab-fcm-and-fiam).
Das Projekt „FcmAndFiam“ sollte jetzt in Android Studio geöffnet sein. Wenn Sie eine Warnung zur fehlenden Datei „google-services.json“ sehen, keine Sorge. Sie wird im nächsten Schritt hinzugefügt.
3. Firebase Console-Projekt erstellen
Firebase zum Projekt hinzufügen
- Rufen Sie die Firebase Console auf.
- Wählen Sie Projekt hinzufügen aus.
- Wählen Sie einen Projektnamen aus oder geben Sie einen ein.
- Folgen Sie der Anleitung in der Firebase Console und klicken Sie dann auf Projekt erstellen oder Firebase hinzufügen, wenn Sie ein vorhandenes Google-Projekt verwenden.
- Klicken Sie auf dem Übersichtsbildschirm Ihres neuen Projekts auf das Android-Symbol, um den Einrichtungsworkflow zu starten.
- Geben Sie den Paketnamen des Codelabs ein:
com.google.firebase.codelab.fcmandfiam
Ihrer App die Datei „google-services.json“ hinzufügen
Nachdem Sie den Paketnamen hinzugefügt haben, klicken Sie auf App registrieren und dann google-services.json herunterladen, um die Firebase-Android-Konfigurationsdatei zu erhalten. Kopieren Sie die Datei „google-services.json“ dann in das Verzeichnis app
in Ihrem Projekt. Nachdem die Datei heruntergeladen wurde, können Sie auf Überspringen klicken, um die nächsten Schritte in der Konsole zu überspringen. Diese Schritte wurden im Projekt „build-android-start“ bereits für Sie ausgeführt.
Ihrer App das Google-Dienste-Plug-in hinzufügen
Das Google-Dienste-Plug-in verwendet die Datei „google-services.json“, um Ihre Anwendung für die Verwendung von Firebase zu konfigurieren. Die Abhängigkeit vom Google-Dienste-Plug-in und das Plug-in selbst sollten bereits den Build-Dateien auf Projekt- und App-Ebene hinzugefügt worden sein. Bestätigen Sie die folgenden Einträge:
build.gradle
buildscript {
...
dependencies {
...
classpath 'com.google.gms:google-services:4.3.8'
}
}
app/build.gradle
plugins {
...
id: 'com.google.gms.google-services'
}
Abhängigkeiten hinzufügen
Für FCM und FIAM sind die folgenden Abhängigkeiten erforderlich. Diese Abhängigkeiten sollten der Build-Datei auf App-Ebene bereits hinzugefügt worden sein. Prüfen Sie, ob die folgenden Abhängigkeiten hinzugefügt wurden:
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'
}
Projekt mit Gradle-Dateien synchronisieren
Damit alle Abhängigkeiten für Ihre App verfügbar sind, sollten Sie Ihr Projekt jetzt mit den Gradle-Dateien synchronisieren. Wählen Sie in der Android Studio-Symbolleiste File > Sync Project with Gradle Files aus.
4. Log-IDs
Sowohl Firebase Cloud Messaging als auch Firebase In-App Messaging verwenden IDs, um Nachrichten an Apps zu senden. FCM verwendet ein Registrierungstoken und FIAM eine Installations-ID.
- Ersetzen Sie in
MainActivity.kt
das TODO durch den folgenden Code, um die IDs zu protokollieren, die zum Senden von Nachrichten erforderlich sind:
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)
}
}
- Verbinden Sie Ihr Android-Gerät und klicken Sie in der Android Studio-Symbolleiste auf Ausführen ( ). Wenn Sie auf die Schaltfläche IDs protokollieren tippen, werden das FCM-Registrierungstoken und die Firebase-Installations-ID in Logcat protokolliert. Die Ausgabe sollte in etwa so aussehen:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. Test-FCM-Nachricht senden
FCM-Nachrichten können sowohl über die Firebase Console als auch über die FCM REST API gesendet werden. In diesem Codelab erstellen wir eine FCM-Benachrichtigungsnachricht und senden sie an unser Gerät. Benachrichtigungsnachrichten werden im Benachrichtigungsbereich des Systems angezeigt. So senden Sie eine FCM-Testnachricht:
- Prüfen, ob die App im Hintergrund läuft (Startbildschirm aufrufen)
- Rufen Sie die Firebase Console auf und wählen Sie im linken Navigationsbereich Cloud Messaging aus.
- Wählen Sie Erste Nachricht senden aus.
- Fügen Sie einen Titel und Text für die Nachricht hinzu und klicken Sie dann auf Testnachricht senden.
- Fügen Sie das FCM-Registrierungstoken hinzu und klicken Sie dann auf Testen.
- Benachrichtigung auf dem Gerät beobachten
- Durch Tippen auf die Benachrichtigung wird die App geöffnet.
6. Test-FIAM-Nachricht senden
Firebase In-App-Messaging kann durch eine Vielzahl von Nutzerereignissen ausgelöst werden. In der Testnachricht wird das Ereignis „App geöffnet“ verwendet, um die In-App-Nachricht auszulösen. So senden Sie eine Test-FIAM-Nachricht:
- Prüfen, ob die App im Hintergrund läuft (Startbildschirm aufrufen)
- Rufen Sie die Firebase Console auf und wählen Sie im linken Navigationsbereich „In-App-Messaging“ aus.
- Wählen Sie Erste Kampagne erstellen aus.
- Wählen Sie die Top-Banner-Kampagne aus und geben Sie den Titel und den Text der Mitteilung ein.
- Klicken Sie auf Auf Gerät testen.
- Fügen Sie die Installations-ID hinzu und klicken Sie auf Testen.
- App wieder öffnen
- In-App-Nachricht beachten
7. Glückwunsch
Herzlichen Glückwunsch! Sie haben sowohl FCM- als auch FIAM-Nachrichten gesendet. Jetzt wissen Sie, wie Sie mit Ihren Nutzern interagieren können, unabhängig davon, ob sie Ihre App im Vordergrund oder im Hintergrund verwenden.
Weitere Informationen
Nächste Schritte
- Nachrichten an Nutzer in Ihrer eigenen Android-App senden.