Android Firebase Pu sh уведомление не получено в фоновом режиме? - PullRequest
0 голосов
/ 20 апреля 2020

Я получаю уведомление pu sh через onMessageReceived (сообщение Remotemessage), когда мое приложение находится в открытом состоянии. Если мое приложение находится в отключенном состоянии, я получаю уведомление pu sh, но не от onMessageReceived ().

означает, что после получения уведомления pu sh на основе данных из уведомления мне нужно перенаправить страница, когда уведомление коснулось. если приложение на переднем плане, которое работает нормально. Когда я убил, я получил уведомление в трее, но когда я нажимаю на уведомление, оно открывает мое приложение, только не эту перенаправленную страницу. Я поставил лог и проверил, что onMessageReceived даже не вызывается. Но получил уведомление в трее. Я искал много и много. Не удалось найти проблему. Полезная нагрузка бэкэнда ниже

  "to": "f2dFWIn81FY:APA91bGumzp0LRr4hvGqUb9WMOvmWqvHSqYcCBzTJlbJs2dmpfrv_tAdu",
  "priority": "high",
  "content_available": true,
  "Type": "Order",
  "notification": {
     "body": "Your [2224531] order is rejected",
     "title": "Order",
     "sound": "default"
  },
  "data": {
     "Title": "Your [2224531] order is rejected",
     "NotificationId": "efb46a45-cd9c-4cf7-881f-9510c24555a6"
  }
}

Я пытаюсь получить данные в MainActivity. java, но пакет не задан !!

Изображение MainActivity

1 Ответ

0 голосов
/ 20 апреля 2020

Это работает как задумано. onMessageReceived не вызывается, если приложение находится в фоновом режиме / закрыто. Данные, указанные в сообщении, должны быть доступны следующим образом:

if (intent?.hasExtra("NotificationId") == true) {
    val id = intent?.extras?.getString("NotificationId")?.toString())                    
}

В процессе запуска onCreate, если приложение было открыто из сообщения, щелкните намерение.

...