I have local notifications that fire up for specific date, for example, next monday. What i want is, to repeat this every monday. How to achieve that? Code i currently use:
if(SYSTEM_VERSION_GRATERTHAN_OR_EQUALTO(@"10.0")) {
/* Trigger date */
NSDate *date = [[NSDate date] mt_dateSecondsAfter:15];
NSDateComponents *triggerDate = [[NSCalendar currentCalendar]
components:NSCalendarUnitYear +
NSCalendarUnitMonth + NSCalendarUnitDay +
NSCalendarUnitHour + NSCalendarUnitMinute +
NSCalendarUnitSecond fromDate:date];
UNCalendarNotificationTrigger *trigger = [UNCalendarNotificationTrigger triggerWithDateMatchingComponents:triggerDate
repeats:NO];
/* Set notification */
UNMutableNotificationContent *content = [UNMutableNotificationContent new];
content.body = @"Время вставать с Ретро ФМ";
content.categoryIdentifier = NotificationCategoryIdent;
content.sound = [UNNotificationSound defaultSound];
NSString *identifier = @"LocalNotification";
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:identifier
content:content
trigger:trigger];
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
if (error != nil) {
NSLog(@"Something went wrong: %@",error);
}
}];
}
else {
// Code for old versions
UILocalNotification *notification = [[UILocalNotification alloc] init];
[notification setAlertBody:@"Время вставать с Ретро ФМ"];
[notification setCategory:NotificationCategoryIdent];
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];
}