UILocalNotification
객체에서, 나는 repeatInterval
속성을 설정하고 알림이 만료 여부를 결정하기 위해 나중에 쿼리에 대한 userInfo
사전에 종료 날짜를 넣어 권하고 싶습니다. 예 :
UILocalNotification* uiLocalNotification;
uiLocalNotification = [[UILocalNotification alloc] init];
//Set the repeat interval
uiLocalNotification.repeatInterval = NSCalendarUnitDay;
NSDate* fireDate = ...
//Set the fire date
uiLocalNotification.fireDate = fireDate;
//Set the end date
NSDate* endDate = ...
uiLocalNotification.userInfo = @{
@"endDate": endDate
};
UIApplication* application = [UIApplication sharedApplication];
[application scheduleLocalNotification:uiLocalNotification];
//...
//Somewhere else in your codebase, query for the expiration and cancel, if necessary
UIApplication* application = [UIApplication sharedApplication];
NSArray* scheduledNotifications = application.scheduledLocalNotifications;
NSDate* today = [NSDate date];
for (UILocalNotification* notification in scheduledNotifications) {
NSDate* endDate = notification.userInfo[@"endDate"];
if ([today earlierDate:endDate] == endDate) {
//Cancel the notification
[application cancelLocalNotification:notification];
}
}
... 그리고 알림을 취소해야하는지 확인합니다. 이 대답은 제가 듣고 싶었던 것이 아니지만 지금 저는 이것을 성취 할 수 없다고 확신합니다. 고마워요 @ rckoenes – cojoj