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