Как запланировать время на основе LocalNotficiation

Я хочу запланировать локальное уведомление на основе завершенных минут

Minutes Array List
   (
    "20.00”,
    "180.00",
    "720.00",
    "1440.00",
    "2880.00",
    "4320.00"
)

на основе минут, завершенных с текущего времени, пользователь может получить уведомление через 20 минут. Задание выполнено через 180 минут. Задание выполнено за 180 минут до достижения конца массива.

Как я могу запланировать локальное уведомление здесь?

    UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
    UNNotificationAction *deleteAction = [UNNotificationAction actionWithIdentifier:@"Close"
                                                                              title:@"Close" options:UNNotificationActionOptionDestructive];

    UNNotificationCategory *category = [UNNotificationCategory categoryWithIdentifier:@"UYLReminderCategoryImage"
                                                                              actions:@[deleteAction] intentIdentifiers:@[]
                                                                              options:UNNotificationCategoryOptionNone];
    NSSet *categories = [NSSet setWithObject:category];

    [center setNotificationCategories:categories];
    NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"JobCompleted" ofType:@"png"];
    UNNotificationAttachment *imageAttachment = [UNNotificationAttachment attachmentWithIdentifier:@"UYLReminderAttachmentImage" URL:[NSURL fileURLWithPath:imagePath] options:nil error:nil];

    UNMutableNotificationContent *content = [UNMutableNotificationContent new];
    content.title = @"MYJob";
    content.categoryIdentifier = @"UYLReminderCategoryImage";
    content.sound = [UNNotificationSound defaultSound];
    content.attachments = @[imageAttachment];    
    UNTimeIntervalNotificationTrigger *trigger;

for (int i = 0 ; i < listMinuteArray.count ; i++){
    content.body = [NSString stringWithFormat:@"Your have Completed %@ job", [scheduleTimingNotification objectAtIndex:i]];

trigger = [UNTimeIntervalNotificationTrigger triggerWithTimeInterval:[[listMinuteArray objectAtIndex:i] integerValue] repeats:NO];
    }
    NSString *identifier = @"UYLLocalNotificationImage";
    UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:identifier content:content trigger:trigger];

    [center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
        if (error != nil) {
            NSLog(@"Something went wrong: %@",error);
        }
    }];

В этом вышеупомянутом случае уведомление вообще не является тигром.

0 ответов

Другие вопросы по тегам