Say today is a Monday and it's 1 PM. I want to schedule a weekly local notification from my iOS app starting today at 2 PM. I'd do this:
NSDateComponents *components = [[[NSDateComponents alloc]init]autorelease];
components.weekday = 2;
components.hour = 14;
components.minute = 0;
UNCalendarNotificationTrigger *trigger = [UNCalendarNotificationTrigger triggerWithDateMatchingComponents:components repeats:YES];
//then make a UNMutableNotificationContent and UNNotificationRequest and schedule it
But if I want to start it next Monday at 2 PM, how do I skip the first occurrence?
To ask the question another way, how do I schedule a repeating UNCalendarNotificationTrigger
starting at some arbitrary time, instead of the first occurrence of the repeat interval?
Thinking outside of the box here.
You could configure your server to deliver a silent push notification to your phone some time in the future (i.e: tomorrow early morning). When you receive the push notification in the background you can use this to setup your local calendar notification. This way you can effectively skip the first notification, or schedule them to start any time in the future.
Of course, you shouldn't rely exclusively on the APNS network, so you'll need to track state of the notifications via an API call when the app is foregrounded.