我有一個GPS
應用程序註冊運行在background
。當我完成一個過程時,我還會顯示一個UILocalNotification
。這正確顯示,如果應用程序是打開的,那麼它也出現在Notification Center
(從頂部向下滑動)。但是,如果當我的應用程序處於後臺或屏幕被鎖定時撥打UILocalNotification
,我會收到通知,但不會顯示在Notification Center
中。UILocalNotification沒有顯示在通知中心,當應用程序在後臺
我正確地註冊在我的應用程序委託的通知(iOS 5的錯誤解決):
// Register for notifications
[[UIApplication sharedApplication]registerForRemoteNotificationTypes:
UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeAlert |
UIRemoteNotificationTypeSound];
調用通知:
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
localNotif.alertBody = msg;
localNotif.alertAction = NSLocalizedString(@"View", nil);
localNotif.soundName = @"alert.caf";
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] presentLocalNotificationNow:localNotif];
[localNotif release];
這是一個錯誤?爲什麼只有當我的應用程序處於打開狀態時纔會在Notification Center
中顯示,即使通知顯示給用戶,而不是其他時間?
不,代碼在後臺完美工作。它已被廣泛測試。本地通知即使在後臺工作,也不會在通知中心顯示。 – 2012-01-09 02:16:16
您的應用程序是否在設置中爲通知中心啓用了應用程序? – DGund 2012-01-09 03:02:25
是的。它顯示在通知中心,如果應用程序是開放的。在後臺時只顯示通知警報。 – 2012-01-09 03:20:49