Фоновая обработка FCM во Flutter - iOS
Чего я хочу достичь
Я реализую FCM во флаттере для iOS таким образом, что в каждом состоянии (передний план, фон и завершено) при получении уведомления нам нужно в течение некоторого времени показывать предупреждение со звуком на экране (скажем, 2 минуты).
Что ясно
Реализация понятна, когда приложение находится на переднем плане, что легко сделать с помощью onMessage
Перезвоните.
Где проблема
Путаница связана с фоном и завершенной частью:
- Как в фоновом режиме определить, что уведомление получено (я знаю, что Resume вызывается, когда мы нажимаем на уведомление в попытке уведомления). Но нам нужно показывать оповещение о прибытии уведомления, а не при нажатии на уведомление.
- Как определить, когда приложение завершено (я знаю, что onLaunch вызывается, когда мы нажимаем на уведомление в панели уведомлений) Но нам нужно отображать предупреждение о прибытии уведомления, а не при нажатии на уведомление.
- Можно ли показать какое-либо системное предупреждение, когда приложение не запущено, например, когда уведомление получено, когда приложение завершено, и мы показываем индивидуальное предупреждение, например, предупреждение на экране.
- Есть обратный вызов onBackgroundMessage, но я не знаю, работает ли он для iOS (поскольку документация больше ориентирована на настройки Android в части обратного вызова onBackgroundMessage).