2013-09-25 2 views
4

Я использую UILocalNotification в своем проекте. Мой код:UILocalNotification не отображается в iOS7

 UILocalNotification *notification = [[UILocalNotification alloc] init]; 
     notification.fireDate = event.date; 
     notification.timeZone = [NSTimeZone systemTimeZone];   

     notification.hasAction = YES; 
     notification.soundName = UILocalNotificationDefaultSoundName; 
     [notification setApplicationIconBadgeNumber:[UIApplication sharedApplication].applicationIconBadgeNumber+1]; 

     notification.alertBody = @"test alert body"; 

     notification.repeatInterval = NSDayCalendarUnit; 

     NSLog(@"SCHEDULED NOTIFICATION = %@", notification); 

     [[UIApplication sharedApplication] scheduleLocalNotification:notification]; 

Вовремя, когда появляется уведомление, ничего не происходит, но значение значка значка приложения получает +1. Для iOS6 это работает нормально. Где может быть проблема?

UPDATE Я не получаю уведомления об уведомлении в то время как мое приложение запускается и когда она закрыта. Номер значка Они меняется.

+0

Пожалуйста, проверьте фоновый режим ... – Deepesh

+0

см. Так ответ http://stackoverflow.com/questions/13081210/uilocalnotification -click-event? rq = 1 – Deepesh

+0

Вы получаете обратный вызов в методе didReceiveLocalNotification? – thatzprem

ответ

0

Если вы работаете его на переднем плане часто didReceiveLocalNotification не хватает:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleName"] 
                 message:notification.alertBody 
                 delegate:nil 
               cancelButtonTitle:@"OK" 
               otherButtonTitles:nil]; 

    [alertView show]; 

    // Reset badges if you want 
    application.applicationIconBadgeNumber = 0; 
} 
+0

Как вы убедитесь, что приложение считается на переднем плане - Нигде не упоминается – thatzprem

+0

Да, вы правы. Я не знаю этого. Это было предположение, потому что у меня когда-то была аналогичная проблема, не показывающая диалог. – Prine

0

Нашли обходной путь для этой проблемы (https://devforums.apple.com/message/900205)

Просто график уведомления с некоторыми миллисекунды задержки. В моем случае (приложение для обмена сообщениями) это работает очень хорошо.

0

Другой возможной проблемой является то, что вы уже отклонили push-уведомления из приложения. Несмотря на то, что в нем указано «Разрешить Push-уведомления», всплывающее меню фактически контролирует ВСЕ уведомления; push и local.

Просто не забудьте проверить свои настройки-> центр уведомлений-> имя вашего приложения. Я потратил час, пытаясь выяснить, что пошло не так, когда оказалось, что я просто отключил push -_-

Смежные вопросы