Навигация по страницам не работает при нажатии на уведомление, если приложение закрыто - PullRequest
0 голосов
/ 18 июня 2020

Я использую OneSignal в Ionic 3 для отправки уведомления pu sh. Мое требование очень простое, мне просто нужно перенаправить пользователя на страницу и изменить слайд на основе параметра type, который я отправляю в полезных данных уведомления.

Мой код работает, если приложение открыто или свернуто, но не работает, если приложение закрыто.

Ниже приведен фрагмент кода из app.component.ts, который находится внутри конструктора

Я также пробовал чтобы добавить приведенный ниже код в platform.ready, но с тем же результатом.

this.oneSignal.startInit('##################################');

  this.oneSignal.inFocusDisplaying(this.oneSignal.OSInFocusDisplayOption.Notification);
  this.oneSignal.handleNotificationReceived().subscribe((resp) => {
    this.isNotification = true;
  });
  this.oneSignal.handleNotificationOpened().subscribe((resp) => {
    this.isNotification = true;
    setTimeout(() => {
      this.events.publish('notification:slidechange', resp.notification.payload.additionalData.type);
    }, 500)
  });

  this.oneSignal.endInit();

После получения события я вызываю функцию, которая меняет слайд на соответствующий номер, но не может изменить слайд, если приложение закрыто.

Я добавил функцию console.log() в goToSlide(), которая успешно печатает сообщение.

events.subscribe('notification:slidechange', (slide) => {
   this.goToSlide(slide);
})

goToSlide(number) {
   window.scrollBy(500, 0);
   this.slides.slideTo(number, 700);
   this.fireSlideChangeEvent(number)
}

Мне просто нужно понять, что мешает приложению изменить слайд, если приложение было закрыто и открыто нажатием на уведомление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...