Find list of Local Notification the app has already set Find list of Local Notification the app has already set ios ios

Find list of Local Notification the app has already set


UIApplication has a property called scheduledLocalNotifications which returns an optional array containing elements of type UILocalNotification.

UIApplication.shared.scheduledLocalNotifications


For Swift 3.0 and Swift 4.0

don't forget to do import UserNotifications

This is working for iOS10+ and watchOS3+ since the class UNUserNotificationCenter is not available for older versions (link)

let center = UNUserNotificationCenter.current()override func viewWillAppear(_ animated: Bool) {    super.viewWillAppear(animated)    center.getPendingNotificationRequests { (notifications) in        print("Count: \(notifications.count)")        for item in notifications {          print(item.content)        }    }}


Scott is correct.

UIApplication's property scheduledLocalNotifications

Here's the code:

NSMutableArray *notifications = [[NSMutableArray alloc] init];[notifications addObject:notification];app.scheduledLocalNotifications = notifications;//Equivalent: [app setScheduledLocalNotifications:notifications];

UIApplication *app = [UIApplication sharedApplication];NSArray *eventArray = [app scheduledLocalNotifications];for (int i=0; i<[eventArray count]; i++){    UILocalNotification* oneEvent = [eventArray objectAtIndex:i];    NSDictionary *userInfoCurrent = oneEvent.userInfo;    NSString *uid=[NSString stringWithFormat:@"%@",[userInfoCurrent valueForKey:@"uid"]];    if ([uid isEqualToString:uidtodelete])    {        //Cancelling local notification        [app cancelLocalNotification:oneEvent];        break;    }}

NSArray *arrayOfLocalNotifications = [[UIApplication sharedApplication] scheduledLocalNotifications] ;for (UILocalNotification *localNotification in arrayOfLocalNotifications) {    if ([localNotification.alertBody isEqualToString:savedTitle]) {        NSLog(@"the notification this is canceld is %@", localNotification.alertBody);        [[UIApplication sharedApplication] cancelLocalNotification:localNotification] ; // delete the notification from the system    }}

For more info, check out this: scheduledLocalNotifications example UIApplication ios