1. Prima di iniziare
In questo codelab, imparerai ad aggiungere la possibilità di interagire con gli utenti sia quando utilizzano la tua app in primo piano sia quando è in background.
Prerequisiti
Nessuno
Cosa imparerai a fare
- Aggiungi Firebase alla tua app Android
- Aggiungi dipendenze FCM e FIAM
- Inviare un messaggio FCM di test alla tua app
- Inviare un messaggio di test FIAM alla tua app
Che cosa ti serve
- Android Studio 4.1
- Dispositivo o emulatore Android
2. Inizia
Recupera il codice campione
Clona il repository GitHub dalla riga di comando:
Importare l'app iniziale
In Android Studio, seleziona la directory codelab-fcm-and-fiam
( ). Dovrebbe essere quella clonata nel passaggio precedente (File > Apri > .../codelab-fcm-and-fiam).
Ora dovresti avere il progetto FcmAndFiam aperto in Android Studio. Se visualizzi un avviso relativo alla mancanza di un file google-services.json, non preoccuparti. Verrà aggiunto nel passaggio successivo.
3. Configura un progetto Firebase e la tua app per utilizzare Firebase
Crea un progetto Firebase
- Accedi alla console Firebase utilizzando il tuo Account Google.
- Fai clic sul pulsante per creare un nuovo progetto, quindi inserisci un nome (ad esempio,
Send messages codelab
). - Fai clic su Continua.
- Se richiesto, leggi e accetta i termini di Firebase, quindi fai clic su Continua.
- (Facoltativo) Attiva l'assistenza AI nella console Firebase (denominata "Gemini in Firebase").
- Per questo codelab, hai bisogno di Google Analytics per utilizzare in modo ottimale i prodotti Firebase, quindi mantieni l'opzione attiva per Google Analytics. Segui le istruzioni sullo schermo per configurare Google Analytics.
- Fai clic su Crea progetto, attendi il provisioning del progetto, poi fai clic su Continua.
Aggiungi Firebase alla tua app
- Nella schermata di riepilogo del nuovo progetto, fai clic sull'icona Android per avviare il flusso di lavoro di configurazione.
- Inserisci il nome del pacchetto del codelab:
com.google.firebase.codelab.fcmandfiam
- Dopo aver aggiunto il nome del pacchetto, fai clic su Registra app, poi su Scarica google-services.json per ottenere il file di configurazione Firebase Android, quindi copia il file google-services.json nella directory
app
del progetto. Dopo aver scaricato il file, puoi fare clic su Salta per i passaggi successivi mostrati nella console (sono già stati eseguiti per te nel progetto build-android-start). - Aggiungi il plug-in google-services alla tua app**
Il plug-in google-services utilizza il file google-services.json per configurare l'applicazione in modo che utilizzi Firebase. La dipendenza del plug-in google-services e il plug-in stesso dovrebbero essere già stati aggiunti rispettivamente ai file di build a livello di progetto e di app. Conferma le seguenti voci:build.gradle app/build.gradlebuildscript { ... dependencies { ... classpath 'com.google.gms:google-services:4.3.8' } }
plugins { ... id: 'com.google.gms.google-services' }
Aggiungere dipendenze
FCM e FIAM richiedono le seguenti dipendenze. Queste dipendenze dovrebbero essere già state aggiunte al file di build a livello di app. Verifica che siano state aggiunte le seguenti dipendenze:
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'
}
Sincronizzare il progetto con i file Gradle
Per assicurarti che tutte le dipendenze siano disponibili per la tua app, a questo punto devi sincronizzare il progetto con i file Gradle. Seleziona File > Sync Project with Gradle Files dalla barra degli strumenti di Android Studio.
4. Identificatori di log
Firebase Cloud Messaging e Firebase In-App Messaging utilizzano entrambi gli identificatori per inviare messaggi alle app. FCM utilizza un token di registrazione e FIAM utilizza un ID installazione.
- In
MainActivity.kt
sostituisci TODO con il codice riportato di seguito per registrare gli identificatori necessari per inviare messaggi:
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)
}
}
- Collega il dispositivo Android e fai clic su Esegui (
) nella barra degli strumenti di Android Studio. Se tocchi il pulsante Registra identificatori, il token di registrazione FCM e l'ID installazioni Firebase vengono registrati in logcat. L'output dovrebbe essere simile al seguente:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. Invia messaggio FCM di prova
I messaggi FCM possono essere inviati sia dalla console Firebase sia dall'API REST FCM. In questo codelab comporremo un messaggio di notifica FCM e lo invieremo al nostro dispositivo. I messaggi di notifica sono quelli visualizzati nell'area di notifica del sistema. Invia un messaggio FCM di prova:
- Assicurati che l'app sia in background (vai alla schermata Home)
- Vai alla console Firebase e seleziona Cloud Messaging nel menu di navigazione a sinistra.
- Seleziona Invia il tuo primo messaggio.
- Aggiungi un titolo e il corpo del messaggio, poi fai clic su Invia messaggio di prova.
- Aggiungi il token di registrazione FCM, quindi fai clic su Test.
- Osserva la notifica sul display del dispositivo
- Se tocchi la notifica, si apre l'app
6. Invia messaggio FIAM di prova
Firebase In-App Messaging può essere attivato in seguito a una serie di eventi utente. Il messaggio di test utilizza l'evento di apertura dell'app per attivare il messaggio in-app. Invia un messaggio FIAM di prova:
- Assicurati che l'app sia in background (vai alla schermata Home)
- Vai alla console Firebase e seleziona Messaggistica in-app nel menu di navigazione a sinistra.
- Seleziona Crea la tua prima campagna.
- Seleziona la campagna con banner nella parte superiore della pagina e inserisci il titolo e il corpo del messaggio.
- Fai clic su Test sul dispositivo.
- Aggiungi l'ID installazioni e fai clic su Testa.
- Riapri l'app
- Osserva il messaggio in-app
7. Complimenti
Congratulazioni, hai inviato correttamente sia messaggi FCM che FIAM. Ora sai come interagire con i tuoi utenti, sia che utilizzino la tua app in primo piano sia che sia in background.
Further reading
Passaggi successivi
- Invia messaggi agli utenti nella tua app per Android.