シミュレーターとローカル通知にバグがありますか、それとも間違ったことをしていますか?
// on button click fire off notification for 30 seconds from now
-(IBAction)scheduleNotification{
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
NSDate *item = [NSDate dateWithTimeIntervalSinceNow:30];
if (localNotif == nil)
return;
localNotif.fireDate = item;
localNotif.timeZone = [NSTimeZone defaultTimeZone];
localNotif.alertBody = NSLocalizedString(@"Test Notification", nil);
localNotif.alertAction = NSLocalizedString(@"View Details", nil);
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.applicationIconBadgeNumber = 0;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];
}
- (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif {
// Handle the notificaton when the app is running
NSLog(@"Recieved Notification %@",notif);
}
didReceiveLocalNotificationは 2 つの通知をログに記録しますが、シミュレーターが実際に通知を表示することはありません。
Recieved Notification <UIConcreteLocalNotification: 0x5943450>{fire date = 2010-08-25 09:36:25 -0400, time zone = America/New_York (EDT) offset -14400 (Daylight), repeat interval = 0, next fire date = 2010-08-25 09:36:25 -0400}
Recieved Notification <UIConcreteLocalNotification: 0x5c53e00>{fire date = 2010-08-25 09:36:25 -0400, time zone = America/New_York (EDT) offset -14400 (Daylight), repeat interval = 0, next fire date = (null)}