Как сгруппировать / объединить множественные push-уведомления RNFirebase в React Native? - PullRequest
0 голосов
/ 21 июня 2019

У меня проблема с группировкой / объединением множественных push-уведомлений в реагировать на нативные, я использую RNFirebase (https://rnfirebase.io/), Я ищу много примеров, но не удается все, я хочу группировать / объединять множественные push-уведомления, такие какWhatsApp, как на картинке ниже.

enter image description here

Это мой сценарий:

async componentDidMount() {
    if(Platform.OS === "android") {
      const channel = new firebase.notifications.Android.Channel('test-channel', 'Test Channel', firebase.notifications.Android.Importance.Max)
                      .setDescription('My apps test channel');
      // Create the channel
      firebase.notifications().android.createChannel(channel);
    }

    this.notificationDisplayedListener = firebase.notifications().onNotificationDisplayed((Notification) => {

    });
    this.notificationListener = firebase.notifications().onNotification((Notification) => {
      const notification = Notification;
      if(Platform.OS === "android") {
        notification
          .setNotificationId(notification.notificationId)
          .setTitle(notification.title)
          .setSubtitle(notification.subtitle)
          .setBody(notification.body)
          .setData(notification.data)
          .setSound("default")
          .android.setGroup('test')
          .android.setGroupSummary(true)
          .android.setChannelId('test-channel')
          .android.setSmallIcon('ic_notification')
          .android.setLargeIcon('ic_launcher_round')
          .android.setAutoCancel(true)
          .android.setColor('#470a49');

        firebase.notifications()
          .displayNotification(notification);
      }else if(Platform.OS === "ios") {
        notification
          .setNotificationId(notification.notificationId)
          .setTitle(notification.title)
          .setSubtitle(notification.subtitle)
          .setBody(notification.body)
          .setData(notification.data)
          .setSound("default")
          .ios.setBadge(notification.ios.badge);

        firebase.notifications()
          .displayNotification(notification);
      } 
    });

    this.notificationOpenedListener = firebase.notifications().onNotificationOpened((NotificationOpen) => {
      const notification = NotificationOpen.notification;

                firebase.notifications().removeDeliveredNotification(notification.notificationId);
    });

    //When notification received when app is closed
    this.initialNotification = firebase.notifications().getInitialNotification()
      .then((notificationOpen) => {
          if (notificationOpen) {
              const notification = notificationOpen.notification;

          }
      });
  }

  componentWillUnmount() {
    this.notificationDisplayedListener();
    this.notificationListener();
    this.notificationOpenedListener();
  }

Пожалуйста, помогите мне.

Спасибо.

...