简体   繁体   中英

UILocalNotification every 15 Minutes, but not at night (after 10pm)

I want to fire an UILocalNotification every 15 minutes. That is no problem:

    UILocalNotification *notification = [[UILocalNotification alloc] init];

    notification.fireDate = [[NSDate date] dateByAddingTimeInterval:15];
    notification.repeatInterval = NSMinuteCalendarUnit;



    notification.alertBody = NSLocalizedString(@"Alert", @"");
    notification.timeZone = [NSTimeZone defaultTimeZone];
    notification.soundName = UILocalNotificationDefaultSoundName;

    [[UIApplication sharedApplication] scheduleLocalNotification:notification];

But I would like to do that only between 8am and 10pm. How can I handle that?

You will have to use repeaInterval , you probably think of repeat the notification every 15 min, but you have a problem if you want to skip hours. You could also schedule all notifications for one day (add one for 7:00am, 7:15am, 7:30am, etc) and repeat them for an interval of 1 day. If you want 4 notifications per hour, from 7am to 10pm that makes 60 notifications (which is under the max 64).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM