1. Zanim zaczniesz
Z tego laboratorium dowiesz się, jak dodać możliwość interakcji z użytkownikami, niezależnie od tego, czy korzystają z aplikacji na pierwszym planie, czy w tle.
Wymagania wstępne
Brak
Czego się nauczysz
- Dodawanie Firebase do aplikacji na Androida
- Dodawanie zależności FCM i FIAM
- Wysyłanie testowej wiadomości FCM do aplikacji
- Wysyłanie do aplikacji testowej wiadomości FIAM
Czego potrzebujesz
- Android Studio 4.1
- urządzenie z Androidem lub emulator;
2. Rozpocznij
Pobieranie przykładowego kodu
Sklonuj repozytorium GitHub z wiersza poleceń:
Importowanie aplikacji startowej
W Android Studio wybierz katalog codelab-fcm-and-fiam
( ). Powinien to być katalog sklonowany w poprzednim kroku (Plik > Otwórz > .../codelab-fcm-and-fiam).
Projekt FcmAndFiam powinien być teraz otwarty w Android Studio. Jeśli zobaczysz ostrzeżenie o braku pliku google-services.json, nie martw się. Dodasz go w następnym kroku.
3. Konfigurowanie projektu Firebase i aplikacji do korzystania z Firebase
Tworzenie projektu Firebase
- Zaloguj się w konsoli Firebase, korzystając ze swojego konta Google.
- Kliknij przycisk, aby utworzyć nowy projekt, a następnie wpisz jego nazwę (np.
Send messages codelab
). - Kliknij Dalej.
- Po wyświetleniu monitu przeczytaj i zaakceptuj warunki usługi Firebase, a potem kliknij Dalej.
- (Opcjonalnie) Włącz w konsoli Firebase pomoc AI (nazywaną „Gemini w Firebase”).
- W tym samouczku Google Analytics jest potrzebne do optymalnego korzystania z usług Firebase, więc pozostaw włączony przełącznik opcji Google Analytics. Aby skonfigurować Google Analytics, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.
- Kliknij Utwórz projekt, poczekaj, aż projekt zostanie udostępniony, a następnie kliknij Dalej.
Dodaj Firebase do swojej aplikacji
- Na ekranie przeglądu nowego projektu kliknij ikonę Androida, aby uruchomić proces konfiguracji.
- Wpisz nazwę pakietu codelabu:
com.google.firebase.codelab.fcmandfiam
- Po dodaniu nazwy pakietu kliknij Zarejestruj aplikację, a potem pobierz plik google-services.json, aby uzyskać plik konfiguracyjny Firebase na Androida. Następnie skopiuj plik google-services.json do katalogu
app
w projekcie. Po pobraniu pliku możesz kliknąć Pomiń, aby przejść do kolejnych kroków wyświetlanych w konsoli (zostały one już wykonane w projekcie build-android-start). - Dodaj wtyczkę usług Google do aplikacji**
Wtyczka usług Google używa pliku google-services.json do konfigurowania aplikacji pod kątem korzystania z Firebase. Zależność wtyczki google-services i sama wtyczka powinny być już dodane odpowiednio do plików kompilacji na poziomie projektu i aplikacji. Potwierdź te wpisy:build.gradle app/build.gradlebuildscript { ... dependencies { ... classpath 'com.google.gms:google-services:4.3.8' } }
plugins { ... id: 'com.google.gms.google-services' }
Dodawanie zależności
FCM i FIAM wymagają tych zależności. Te zależności powinny być już dodane do pliku kompilacji na poziomie aplikacji. Sprawdź, czy dodano te zależności:
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'
}
Synchronizowanie projektu z plikami Gradle
Aby mieć pewność, że wszystkie zależności są dostępne dla aplikacji, w tym momencie zsynchronizuj projekt z plikami Gradle. Na pasku narzędzi Android Studio wybierz File > Sync Project with Gradle Files (Plik > Synchronizuj projekt z plikami Gradle).
4. Identyfikatory dzienników
Komunikacja w chmurze Firebase i Komunikacja w aplikacji Firebase używają identyfikatorów do wysyłania wiadomości do aplikacji. FCM używa tokena rejestracji, a FIAM – identyfikatora instalacji.
- W
MainActivity.kt
zastąp TODO kodem poniżej, aby rejestrować identyfikatory potrzebne do wysyłania wiadomości:
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)
}
}
- Podłącz urządzenie z Androidem i na pasku narzędzi Android Studio kliknij Uruchom (
). Kliknięcie przycisku Log Identifiers (Zapisz identyfikatory) spowoduje zapisanie tokena rejestracji FCM i identyfikatora instalacji Firebase w logcat. Dane wyjściowe powinny wyglądać tak:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. Wysyłanie testowej wiadomości FCM
Wiadomości FCM można wysyłać zarówno z konsoli Firebase, jak i z interfejsu FCM REST API. W tym laboratorium kodowania utworzymy wiadomość powiadomienia FCM i wyślemy ją na nasze urządzenie. Powiadomienia to te, które są wyświetlane w obszarze powiadomień systemu. Wyślij testową wiadomość FCM, wykonując te czynności:
- Upewnij się, że aplikacja działa w tle (przejdź do ekranu głównego).
- Otwórz konsolę Firebase i w menu nawigacyjnym po lewej stronie kliknij Cloud Messaging.
- Kliknij Wyślij pierwszą wiadomość.
- Dodaj tytuł i treść wiadomości, a następnie kliknij Wyślij wiadomość testową.
- Dodaj token rejestracji FCM, a potem kliknij test.
- Obserwuj powiadomienie na wyświetlaczu urządzenia.
- Kliknięcie powiadomienia otwiera aplikację.
6. Wysyłanie testowej wiadomości FIAM
Wiadomości w aplikacji Firebase mogą być wywoływane w wyniku różnych zdarzeń użytkownika. Wiadomość testowa używa zdarzenia otwarcia aplikacji do wywołania wiadomości w aplikacji. Aby wysłać testową wiadomość FIAM:
- Upewnij się, że aplikacja działa w tle (przejdź do ekranu głównego).
- Otwórz konsolę Firebase i w menu nawigacyjnym po lewej stronie wybierz „Wiadomości w aplikacji”.
- Kliknij Utwórz pierwszą kampanię.
- Wybierz kampanię z banerem u góry strony i wpisz tytuł oraz treść wiadomości.
- Kliknij Testuj na urządzeniu.
- Dodaj identyfikator instalacji i kliknij Testuj.
- Otwórz ponownie aplikację
- Obserwowanie wiadomości w aplikacji
7. Gratulacje
Gratulacje. Udało Ci się wysłać wiadomości FCM i FIAM. Teraz wiesz już, jak zachęcać użytkowników do korzystania z aplikacji, niezależnie od tego, czy jest ona na pierwszym planie, czy w tle.
Więcej informacji
- Dokumentacja Komunikacji w chmurze Firebase
- Dokumentacja funkcji Firebase Wysyłanie wiadomości w aplikacji
Co dalej?
- Wysyłaj wiadomości do użytkowników własnej aplikacji na Androida.