Ми вважаємо, що push-сповіщення — це чудовий спосіб увімкнути повідомлення в режимі реального часу та повідомляти користувачів про те, що їм надійшло нове повідомлення від HelpCrunch (тобто з вашоїго акаунту). Це дозволяє вам залишатися на зв’язку зі своїми користувачами, навіть коли застосунок активно не використовується.
При цьому HelpCrunch Mobile SDK не вимагає увімкнення push-повідомлень. Без push-сповіщень користувачі вашого застосунку все одно зможуть отримувати нові повідомлення, але побачать їх лише якщо відкриють вікно чату HelpCrunch.
Отже, щоб додати push-сповіщення до застосунку, вам знадобиться:
- Додайте google-services.json до папки app/
- Щоб увімкнути продукти Firebase у своєму застосунку, додайте плагін google-services до свого файлу app/build.gradle. У вашому кореневому (на рівні проекту) файлі Gradle (build.gradle) додайте правила для включення плагіна Google Services. Переконайтеся, що у вас також є репозиторій Google Maven.
buildscript {
repositories {
// Check that you have the following line (if not, add it):
google() // Google's Maven repository
}
dependencies {
// ...
// Add the following line:
classpath 'com.google.gms:google-services:4.3.3' // Google Services plugin
}
}
allprojects {
// ...
repositories {
// Check that you have the following line (if not, add it):
google() // Google's Maven repository
// ...
}
}
In your module (app-level) Gradle file (usually app/build.gradle), add a line to the bottom of the file.
apply plugin: 'com.android.application'
android {
// ...
}
// Add the following line to the bottom of the file:
apply plugin: 'com.google.gms.google-services' // Google Play services Gradle plugin
Додавання сповіщень HelpCrunch до проекту зі сповіщеннями
У цьому випадку вам потрібно відокремити свої сповіщення від наших. Наступний код чудово виконує цю задачу:
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(@NonNull RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
if (HelpCrunchExt.isHelpCrunchMessage(remoteMessage)) {
HelpCrunch.showNotification(remoteMessage);
} else {
//Do something yours
}
}
}
Конфлікти FirebaseMessagingService
Зверніть увагу, що наш сервіс має дуже високий пріоритет. Якщо ви зіткнулися з проблемою, коли ви не отримуєте сповіщення в застосунку, підвищте пріоритет FirebaseMessagingService понад 9990 і дотримуйтесь інструкцій з попереднього розділу.
Приклад ініціалізації сервісу:
<service
android:name=".YourFirebaseMessagingService"
android:exported="false">
<intent-filter android:priority="9991">
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>