我使用处理本地通知:本地通知“didReceiveLocalNotification”调用两次
- (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif
并安排本地通知:当我收到通知,didReceiveLocalNotification:
被调用两次
- (void)scheduleNotificationWithInterval:(int)minutesBefore {
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
return;
NSDate *fireDate = [NSDate date];
localNotif.fireDate = [fireDate dateByAddingTimeInterval:minutesBefore*60];
localNotif.timeZone = [NSTimeZone defaultTimeZone];
localNotif.repeatInterval = kCFCalendarUnitMinute;
localNotif.alertBody = [NSString stringWithFormat:NSLocalizedString(@"LocalEvent notification in %i minutes.", nil),minutesBefore];
localNotif.alertAction = NSLocalizedString(@"View Details", nil);
localNotif.applicationIconBadgeNumber = 1;
NSDictionary *infoDict = [NSDictionary dictionaryWithObjectsAndKeys:@"This is dict, you can pass info for your notification",@"info",nil];
localNotif.userInfo = infoDict;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];
NSLog(@"Event scheduled");
}
。
我做错了什么?
请帮忙。
谢谢。
我不确定为什么,但是我也在设备上面对这个问题(多次didReceiveLocalNotification),所以我维护一个称为状态的字段并手动检查该通知的状态字段,如果它已经被触发 – user1046037 2012-06-07 10:25:44