UILocalNotification, когда iPhone выключен - PullRequest
3 голосов
/ 20 декабря 2011

Что происходит, когда UILocalNotofication запланирован, когда устройство выключено.

Например.Я планирую UILocalNotification на 3 часа дня каждый день.Но устройство выключено с 15:00 до 16:00.Я предполагаю, что будет выполнено любое из следующих условий:

  • После перезапуска устройства уведомление не запускается.
  • Уведомление запускается при перезапуске устройства, т.е. в 16:00

У меня нет устройства, и я не смог проверить его на симуляторе.

Примечание. Под выключением я подразумеваю, что устройство выключено, а не спит /режим ожидания

Ответы [ 2 ]

4 голосов
/ 03 апреля 2014

Локальные уведомления будут запускаться после выключения и включения устройства.

Я написал крошечное тестовое приложение, которое проверяет следующее:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [[UIApplication sharedApplication] cancelAllLocalNotifications];

    NSDate *nowDate = NSDate.date;

    for (int i = 1; i <= 50; i++) {
        UILocalNotification *n = [[UILocalNotification alloc]init];

        n.fireDate = [nowDate dateByAddingTimeInterval:60 * i ];
        n.applicationIconBadgeNumber = 0;

        n.alertAction = @"Open";
        n.alertBody = [NSString stringWithFormat:@"ln %@ %@", @(i), n.fireDate];
        [[UIApplication sharedApplication] scheduleLocalNotification:n];
    }
    return YES;
}
0 голосов
/ 20 декабря 2011

Когда вы выключаете свое устройство, уведомление становится несуществующим, поэтому, когда вы снова включаете свое устройство, ничего не произойдет, если вы не создадите это уведомление снова.

Таким образом, если вы запланируете событие на 3 часа дня, а ваше устройство выключится на 14:59, а затем снова включится в 15:59, уведомление не сработает, поскольку его необходимо создать заново.

...