wip: add proper fire date

parent 74093e2d
...@@ -699,26 +699,25 @@ ...@@ -699,26 +699,25 @@
content.body = [NSString localizedUserNotificationStringForKey:notification.alertBody content.body = [NSString localizedUserNotificationStringForKey:notification.alertBody
arguments:nil]; arguments:nil];
content.sound = [UNNotificationSound defaultSound]; content.sound = [UNNotificationSound defaultSound];
NSDate *fireDate = notification.fireDate;
NSCalendar *gregorianCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDate *fireDate = notification.fireDate;
if(fireDate==nil) {
fireDate = [NSDate date];
}
NSCalendar *gregorianCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
// Extract all date components into dateComponents // Extract all date components into dateComponents
NSDateComponents *dateComponents = [gregorianCalendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit NSDateComponents *dateComponents = [gregorianCalendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit
fromDate:fireDate]; | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit
fromDate:fireDate];
/// 4. update application icon badge number /// 4. update application icon badge number
content.badge = @([[UIApplication sharedApplication] applicationIconBadgeNumber] + 1); //content.badge = @([[UIApplication sharedApplication] applicationIconBadgeNumber] + 1);
// Deliver the notification at the fire date. // Deliver the notification at the fire date.
UNCalendarNotificationTrigger *trigger = [UNCalendarNotificationTrigger triggerWithDateMatchingComponents:dateComponents repeats:NO]; UNCalendarNotificationTrigger *trigger = [UNCalendarNotificationTrigger triggerWithDateMatchingComponents:dateComponents repeats:NO];
NSString *identifier = @"DefaultNotificationIdentifier"; UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:@"DefaultNotificationIdentifier" content:content trigger:trigger];
if(notification.userInfo!=nil && [notification.userInfo objectForKey:@"id"]!=nil) {
identifier = [notification.userInfo objectForKey:@"id"];
}
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:identifier content:content trigger:trigger];
/// 3. schedule localNotification /// 3. schedule localNotification
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment