Создать уведомление Watchkit программно

Я хочу отправить уведомление на Apple Watch в определенное время. Мне удалось отобразить статическое сообщение на симуляторе с помощью файла apns, но я бы хотел установить данные и время уведомления в контроллере.

Я слышал, что я не смогу сделать это на симуляторе, но если бы у меня был настоящий телефон и часы, как бы это работало?

2 ответа

Решение

Итак, вы хотите сделать что-то в расширении приложения для часов и на основе результатов запланировать UILocalNotification что будет отправлено на телефон в какой-то момент?

Вы не можете напрямую запланировать UILocalNotification из-за того, что у вас нет доступа к объекту UIApplication. Смотрите комментарий сотрудников Apple здесь.

Однако, используя Watch Connectivity, вы можете отправить сообщение с часов на телефон и создать приложение для телефона и запланировать его в фоновом режиме. Часы будут отображать уведомление, если телефон заблокирован во время запуска. В этом случае будет вызываться сцена уведомлений часов.

Предполагая, что вы хотите отправить уведомление с телефона на часы: вы можете использовать UILocalNotification для отправки уведомления на часы - но часы должны быть заблокированы, чтобы получить его. Также нет гарантии, когда Watch OS включит часы для запуска кода, который получает ваше уведомление, поэтому ваше уведомление может прийти через несколько минут или часов после его отправки.

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