我使用處理本地通知:本地通知「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