swift / ios обновляет данные приложения в фоновом режиме
Я пишу приложение для iOS / Swift, которое считывает данные из службы REST каждые X минут и соответственно обновляет пользовательский интерфейс.
Теперь мне бы хотелось, чтобы, когда приложение помещалось в фоновый режим, задача продолжала вызываться с интервалом X минут, считываемым из службы REST, и, если только что прочитанные данные удовлетворяют заданному условию, отображать уведомление, побуждающее пользователя принести приложение обратно на передний план.
В своих поисках я читал это во времяapplicationDidEnterBackground
событие, я должен начать задачу сbeginBackgroundTaskWithExpirationHandler
.
Проблема в том, что, если я правильно понял, это позволяет максимум 10/15 минут, после чего приложение завершается, если задача не была остановлена сendBackgroundUpdateTask
пока я хочу, чтобы задание продолжало опрашивать сервис бесконечно (по крайней мере, пока пользователь не отключит его в настройках приложения)
Как этот вид функциональности выполняется нормально? Существуют ли какие-либо общие решения или лучшие практики для решения такой проблемы?