2017-02-04 3 views
0

Доброе утро господаUNCalendarNotificationTrigger - Выполнить после часа

Я знаю, используя UNCalendarNotificationTrigger таким образом:

var dateComponents = DateComponents() 
dateComponents.hour = 10 
dateComponents.minute = 30 
let trigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: true) 

Каждый день в 10:30 уведомление будет доставлено.

Мой вопрос заключается в том, открывает ли пользователь приложения или звонки после этого времени, если уведомление будет доставлено в любом случае.

ответ

0

Локальные уведомления, созданные и запланированные, не имеют ничего общего с вашим приложением. Они находятся в руках системы , которая заботится о них с этого момента. Для этого предназначен Центр уведомлений пользователей.

Уведомление всегда срабатывает. Будет ли оно «доставлено», зависит от того, что вы подразумеваете под «доставленным».

Пользователь может отключить уведомления, и в этом случае при получении уведомления не будет обнаружено уведомления. Но если пользователь решил разрешить уведомления и уведомления в Центре уведомлений, уведомление будет видимым. Это произойдет, если ваше приложение не работает.

Если ваше приложение является работает во время пожаров уведомления, то это до вас поставили себя в качестве notification center delegate для того, чтобы услышать об этом. Если вы этого не сделаете, то по умолчанию предупреждение не будет видно пользователю.

Если «пользователь открывает приложения ... после этого времени», как вы спрашиваете в своем вопросе, тогда в сообщении было отправлено . Если пользователь разрешил оповещения, у пользователя уже видно предупреждение. Вы можете обратиться в центр уведомлений, чтобы узнать о последних уведомлениях. Но так как вы знаете, что уведомление было отправлено в 10:30, если ваше приложение запущено, это все равно, что нужно посмотреть, смотрите ли вы на текущее время, чтобы узнать, что произошло.

+0

Спасибо за объяснение matt, помогите мне много – user2976298

Смежные вопросы