Недавно была поставлена задача передавать данные по сети после пуш уведомления, когда приложение убито. Причем когда "не убито" запрос должен отправляться с основного модуля с данными, которые включают информацию по авторизации. Раньше мне не приходилось сталкиваться с этим, поэтому зафиксирую, чтобы не забыть.
1) метод application(_:didReceiveRemoteNotification:) не срабатывает, когда приложение убито юзером или не было запущено после перезагрузки устройства.
2) обрабатывать такие пуши нужны в NotificationService. Подробно описано в статье.
https://www.raywenderlich.com/8277640-push-notifications-tutorial-for-ios-rich-push-notifications
3) для того чтобы NotificationService начал обрабатывает пуши, которые удовлетворяют двум условиям.
4) чтобы брать данные из UserDefaults понадобилось создать appGroup и добавить туда приложение и notificationService, так как notificationService не может видеть напрямую данные из основного приложения.
5) чтобы notificationCenter не перехватывал события при включенном состоянии и вообще не отображался пуш, нужно:
Вроде все знания которые мне понадобились.