1. Прежде чем начать
В этой лабораторной работе вы узнаете, как добавить возможность взаимодействия с пользователями независимо от того, используют ли они ваше приложение на переднем плане или в фоновом режиме.
Предпосылки
Никто
Чему вы научитесь
- Добавьте Firebase в ваше приложение Android
- Добавить зависимости FCM и FIAM
- Отправьте тестовое сообщение FCM в ваше приложение
- Отправьте тестовое сообщение FIAM в ваше приложение
Что вам понадобится
- Android Studio 4.1
- Android-устройство или эмулятор
2. Начните
Получить пример кода
Клонируйте репозиторий GitHub из командной строки:
Импортируйте стартовое приложение
В Android Studio выберите каталог codelab-fcm-and-fiam
( ). Это будет тот, который был клонирован на предыдущем шаге ( Файл > Открыть > .../codelab-fcm-and-fiam).
Теперь проект FcmAndFiam должен быть открыт в Android Studio. Если вы видите предупреждение об отсутствии файла google-services.json, не волнуйтесь. Он будет добавлен на следующем шаге.
3. Настройте проект Firebase и свое приложение для использования Firebase.
Создать проект Firebase
- Войдите в консоль Firebase, используя свою учетную запись Google.
- Нажмите кнопку, чтобы создать новый проект, а затем введите имя проекта (например,
Send messages codelab
). - Нажмите «Продолжить» .
- При появлении соответствующего запроса ознакомьтесь с условиями Firebase и примите их, а затем нажмите кнопку «Продолжить» .
- (Необязательно) Включите помощь ИИ в консоли Firebase (так называемая «Gemini в Firebase»).
- Для этой практической работы вам понадобится Google Analytics для оптимального использования продуктов Firebase, поэтому включите опцию Google Analytics. Следуйте инструкциям на экране, чтобы настроить Google Analytics.
- Нажмите «Создать проект» , дождитесь завершения подготовки проекта, а затем нажмите «Продолжить» .
Добавьте Firebase в свое приложение
- На обзорном экране нового проекта щелкните значок Android, чтобы запустить рабочий процесс настройки.
- Введите имя пакета codelab:
com.google.firebase.codelab.fcmandfiam
- После добавления имени пакета нажмите «Register App», затем «Download google-services.json», чтобы получить файл конфигурации Firebase для Android. Затем скопируйте файл google-services.json в каталог
app
вашего проекта. После загрузки файла нажмите «Skip» , чтобы перейти к следующим шагам, отображаемым в консоли (они уже выполнены в проекте build-android-start). - Добавьте плагин Google-services в свое приложение**
Плагин google-services использует файл google-services.json для настройки вашего приложения для работы с Firebase. Зависимость плагина google-services и сам плагин должны быть уже добавлены в файлы сборки проекта и приложения соответственно. Подтвердите следующие записи: build.gradle приложение/build.gradlebuildscript { ... dependencies { ... classpath 'com.google.gms:google-services:4.3.8' } }
plugins { ... id: 'com.google.gms.google-services' }
Добавить зависимости
Для FCM и FIAM требуются следующие зависимости. Эти зависимости должны быть уже добавлены в файл сборки уровня приложения. Убедитесь, что следующие зависимости добавлены:
приложение/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'
}
Синхронизируйте свой проект с файлами Gradle
Чтобы убедиться, что все зависимости доступны вашему приложению, на этом этапе необходимо синхронизировать проект с файлами Gradle. Выберите «Файл» > «Синхронизировать проект с файлами Gradle» на панели инструментов Android Studio.
4. Идентификаторы журналов
Firebase Cloud Messaging и Firebase In App Messaging используют идентификаторы для отправки сообщений приложениям. FCM использует регистрационный токен, а FIAM — идентификатор установки.
- В
MainActivity.kt
замените TODO на код ниже, чтобы регистрировать идентификаторы, необходимые для отправки сообщений:
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)
}
}
- Подключите свое Android-устройство и нажмите «Выполнить» (
) на панели инструментов Android Studio. При нажатии кнопки «Идентификаторы журнала» регистрационный токен FCM и идентификатор установки Firebase будут записаны в logcat. Вывод должен выглядеть следующим образом:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. Отправьте тестовое сообщение FCM.
Сообщения FCM можно отправлять как из консоли Firebase, так и через REST API FCM. В этой лабораторной работе мы создадим уведомление FCM и отправим его на наше устройство. Уведомления — это сообщения, которые отображаются в области уведомлений системы. Отправьте тестовое сообщение FCM следующим образом:
- Убедитесь, что приложение работает в фоновом режиме (перейдите на главный экран)
- Перейдите в консоль Firebase и выберите Cloud Messaging в левой навигационной панели.
- Выберите «Отправить первое сообщение».
- Добавьте заголовок и текст сообщения, затем нажмите « Отправить тестовое сообщение».
- Добавьте токен регистрации FCM, затем нажмите «Тест».
- Наблюдать за отображением уведомлений на устройстве
- Нажатие на уведомление открывает приложение.
6. Отправьте тестовое сообщение FIAM.
Сообщения Firebase In App могут быть активированы в результате различных пользовательских событий. Тестовое сообщение использует событие открытия приложения для запуска сообщения In App. Отправьте тестовое сообщение FIAM следующим образом:
- Убедитесь, что приложение работает в фоновом режиме (перейдите на главный экран)
- Перейдите в консоль Firebase и выберите «In-App Messaging» в левой навигационной панели.
- Выберите «Создать свою первую кампанию».
- Выберите верхнюю баннерную кампанию и введите заголовок и текст сообщения.
- Нажмите «Тест» на устройстве.
- Добавьте идентификатор установки и нажмите «Тест».
- Повторно открыть приложение
- Наблюдать в сообщении приложения
7. Поздравления
Поздравляем! Вы успешно отправили сообщения FCM и FIAM. Теперь вы знаете, как взаимодействовать с пользователями, независимо от того, используют ли они ваше приложение в активном режиме или в фоновом режиме.
Дальнейшее чтение
Что дальше?
- Отправляйте сообщения пользователям в вашем собственном приложении для Android.