Freshchat push-уведомление через Firebase (Android) - PullRequest
0 голосов
/ 07 апреля 2019

Я внедряю службу третьей части в своем приложении (FreshChat, сервис, позволяющий интегрировать службу поддержки в приложение или веб-сайт), и все идет хорошо, за исключением push-уведомлений для чатов. Freshchat работает через Firebase (и push-уведомления firebase не доставляют проблем), но уведомления freshat не работают. Я следовал официальной документации freshchat, но есть устаревшие методы и определенно не работают (я много пробовал)

Вот код Firebase Cloud Messaging:

 public class FireBase  extends FirebaseMessagingService {




@Override
public void onMessageReceived(RemoteMessage message) {
    super.onMessageReceived(message);


    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, "channel_id")
            .setContentTitle(message.getNotification().getTitle())
            .setContentText(message.getNotification().getBody())
            .setPriority(NotificationCompat.PRIORITY_DEFAULT)
            .setStyle(new NotificationCompat.BigTextStyle())
            .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
            .setSmallIcon(R.mipmap.ic_launcher)
            .setAutoCancel(true);

    NotificationManager notificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    notificationManager.notify(0, notificationBuilder.build());


}

И выдержка из документации FreshChat:

7.1 Подключение Freshchat с FCM

Если вы еще не интегрировали FCM, сделайте это, следуя приведенным здесь инструкциям. После выполнения шагов FCM для интеграции выполните следующие 2 шага для подключения Freshchat и FCM

Шаг 1. Отправка токена регистрацииВ реализации приложения FirebaseInstanceIdService отправьте токен Freshchat следующим образом

 Java
 @Override
 public void onTokenRefresh() {
 String token = FirebaseInstanceId.getInstance().getToken();
 Freshchat.getInstance(this).setPushRegistrationToken(token);
  }

Шаг 2. Обработка сообщения FCMВ реализации приложения FirebaseMessagingService передайте объект RemoteMessage в Freshchat, если это уведомление Freshchat.

 Java
 public void onMessageReceived(RemoteMessage remoteMessage) {
 if (Freshchat.isFreshchatNotification(remoteMessage)) {
    Freshchat.getInstance(this).handleFcmMessage(context, remoteMessage);
 } else {
    //Handle notifications with data payload for your app
 }
 }

Я пытался сделать это с помощью документации, но просто не работает, вы можете мне помочь? Заранее спасибо! Вот также полная документация FreshChat: https://support.freshchat.com/support/solutions/articles/229319-freshchat-android-sdk-integration-steps

...