К сожалению нет. Но возможно есть кастомные реализации подобного sheduler'а
В iOS очень сложно с работой в фоне+приложение может быть выгружено в любой момент пользователем. Самый идеальный вариант - реализовать подобную логику на сервере, и , воспользовавшийсь какой либо очередью сообщений (rabbit mq там) +remote push notification, уведомить клиента о наступлении события
Но если с сервером проблемы, то вручную это делается следующим образом:
1) Определить дату и время срабатывания
2) Завести таймер NSTimer с этой датой, там есть метод initWithFireDate(точно не помню), указав селектор(метод) для срабатывания
3) при уходе приложения в фон остановить таймер
4) при возвращении приложения из фона или при запуске - проверить , больше ли текущее время за запланированное в пункте 1 . Если да, то выполнить предпологаемую логику, если нет - то выполнить пункт 2.
Для того, что бы пользователь не проморгал момент наступления события, можно бросать/шедулить локальные нотификации UILocalNotification- в этом случае, если приложение будет в фоне, пользователь увидет пуш и если это что то важное для него - запустит приложение и кинет вас в пункт 4