Как реализовать фоновую загрузку и обработку данных в приложении nativescript/angular
Я уже задавал аналогичный вопрос несколько месяцев назад, но все еще имею ту же проблему, и, надеюсь, какое-нибудь новое решение поможет мне ее решить. Мне нужно выполнить некоторые задачи в фоновом режиме в моем приложении Nativescript/Angular как на устройствах Android, так и на устройствах Apple. В частности, мне нужно получить некоторые данные, затем обработать их и поместить в базу данных sqlite, но для меня важно, чтобы процесс продолжал работать, когда приложение свернуто или устройство выключено(речь идет о режиме сна, а не полном выключении). Прямо сейчас у меня есть worker, который выполняет эту задачу, и, поскольку мне нужно обновить некоторые данные в UI, а компонент пользовательского интерфейса может быть уже уничтожен (например, телефон решил освободить оперативную память за счет моего свернутого приложения и выгрузил оттуда компоненты и сервисы, сталкивался с таким на своем Huawei), я отправляю глобальные уведомления (application.notify) в свое приложение. Но у меня много проблем с этим решением. Прежде всего, он работает на Android, но на iPhone, когда вы сворачиваете приложение, процесс останавливается и продолжается после открытия приложения (как я понимаю, Apple очень строго относится к таким вещам, поэтому необходимы дополнительные меры, чтобы позволить процессу работать в фоне). Другая проблема заключается в том, что у меня worker.terminate() не работает должным образом, и иногда, когда я пытаюсь создать новый worker через некоторое время после завершения старого, приложение вылетает, поэтому прямо сейчас я просто не делаю этого, и могу запустить новых worker, но, конечно, я понимаю, что это, мягко говоря, не очень хорошее решение. Итак, как я могу решить свою проблему другим методом или исправить существующий?