Swift - выполнение функции при получении локального уведомления в приложении в фоновом режиме - PullRequest
0 голосов
/ 06 июня 2019

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

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

Если я использую функцию userNotificationCenter (_: didReceive: withCompletionHandler :) только тогда, когда пользователь нажимает на уведомление.

Если я использую функцию userNotificationCenter (_: willPresent: withCompletionHandler :), я могу работать, только когда приложение запущено.

С этими двумя опциями выше я не могу сохранить в базу данных, когда приходит уведомление с приложением в фоновом режиме и пользователь не нажимает. Кто-нибудь знает любую другую функцию, которую я могу вызвать в этом случае? ИЛИ способ выполнения функции при получении уведомления.

1 Ответ

0 голосов
/ 06 июня 2019

Вы просто не можете :( UserNotification было сделано, чтобы показать некоторую информацию пользователю, а не планировать задачу в приложении. Надеюсь, что это изменится в iOS 13 - как Apple говорит: «iOS 13 добавляет новый API фоновых задач к платформе, который позволяет приложениям планировать действия в фоновом режиме, не заставляя пользователей открывать приложение и запускать его на переднем плане».

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