Как обновить приложение Watch из расширения iOS, если содержащее приложение вообще не запущено

У меня есть приложение для iOS и расширение Action, которые обмениваются данными через общие пользовательские настройки группы приложений.

Когда пользователь добавляет данные модели с помощью расширения действия, а приложение iOS находится в фоновом режиме, я могу использовать KVO, чтобы наблюдать за рассматриваемым ключом UserDefaults, и запустить фоновое обновление приложения Watch - это прекрасно работает.

Однако что делать, если приложение не в фоновом режиме, а полностью неактивно? КВО, очевидно, не произойдет. Приложение iOS получит изменения в UserDefaults при следующем запуске (вручную или через фоновое обновление) и распространит их на часы, но в то же время данные Watch не синхронизируются до следующего обновления.

Единственный способ, который я могу решить, это решить, чтобы расширение Action отправляло удаленное беззвучное уведомление в приложение для iOS, которое затем обновляло фон для часов. Но, кажется, немного... тяжело? перейти через Интернет для приложения и его расширения, сидя на одном устройстве.

Какое решение мне не хватает?

0 ответов

Другие вопросы по тегам