Skip to main content
Documentation for version v73

Firebase Cloud Messaging

Настройки проекта Firebase Cloud Messaging

Создайте проект Firebase:



Добавьте приложение к проекту:



Зарегистрируйте приложение, заполнив необходимые поля с информацией о нем:



Выполните загрузку google-services.json:



Настройка ресурса Altcraft

В платформе Altcraft создайте ресурс или добавьте к существующему новый канал коммуникации — Push. Затем в настройках ресурса выберите платформу Android и активируйте переключатель Firebase Cloud Messaging:



Чуть ниже перейдите в настройки Firebase и укажите идентификатор вашего проекта (messagingSenderId) и идентификатор отправителя (projectId). Также необходимо загрузить Firebase-файл с приватным ключом (.json):



Создать такой Firebase-файл можно в Firebase в разделе Project setting -> Service account.

После внесения изменений не забудьте сохранить ресурс.

Интеграция FCM в проект приложения

Ручная интеграция

Переместите загруженный файл google-services.json в в корневой каталог модуля приложения (app):



Затем добавьте плагины и зависимости в Gradle-файлы:


  • build.gradle.kts (project level)

Добавьте плагин google-services в файл build.gradle.kts уровня проекта (project-level):

    plugins {

id("com.google.gms.google-services") version "4.4.3" apply false

}


Обратите внимание

Информация об актуальной версии плагина доступна здесь.


  • build.gradle.kts (applevel)

Добавьте плагин google-services в файл build.gradle.kts уровня приложения (app-level)

    plugins {

id("com.google.gms.google-services")

}

Также добавьте зависимости:

С использованием firebase-bom (позволяет автоматически указывает версии firebase-библиотек)
    dependencies {
    implementation(platform("com.google.firebase:firebase-bom:34.0.0"))
implementation("com.google.firebase:firebase-messaging")
}
Без использования firebase-bom
    dependencies {
implementation("com.google.firebase:firebase-messaging:25.0.0")
}


tip

Информация об актуальных версии библиотек доступна на этой странице Firebase.

После добавления плагинов и зависимостей выполните синхронизацию изменений Gradle.


Автоматическая настройка Android Studio

Перейдите в Tools -> Firebase -> CloudMessaging -> Set up Firebase Cloud Messaging:



Создание класса, расширяющего FirebaseMessagingService()

Создайте расширяющий FirebaseMessagingService() класс:

import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage


/**
* FCM service for handling push tokens and messages.
*/
class FCMService : FirebaseMessagingService() {

/**
* Called when a new FCM token is generated.
*
* @param token The new FCM token.
*/
override fun onNewToken(token: String) {
super.onNewToken(token)
}

/**
* Called when a push message is received.
*
* Forwards the message to all receivers with additional metadata.
*
* @param message The received [RemoteMessage].
*/
override fun onMessageReceived(message: RemoteMessage) {
super.onMessageReceived(message)

//message
}
}

Обновление manifest приложения

Добавьте информацию о FCMService в AndroidManifest.xml приложения:

        <service
android:name="com.altcraft.fcm.FCMService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>

Замените com.altcraft.fcm.FCMService на ваш пакет и класс.