事件未添加到ios 5中的日历中

时间:2011-12-23 04:34:32

标签: objective-c ios5

我正在为用户提供一个按钮,可以将日常活动添加到他们的日历中,其中包含以下两个警报:

myEvent.title     = [NSString stringWithFormat:@"The Event"];
myEvent.startDate = theeventdate;
myEvent.endDate   = theeventdate;
myEvent.allDay = YES;
NSMutableArray *myAlarmsArray = [[NSMutableArray alloc] initWithObjects:
                                 [EKAlarm alarmWithRelativeOffset: -86400],
                                 [EKAlarm alarmWithRelativeOffset: -172800],nil];
myEvent.alarms = myAlarmsArray;
[myEvent setCalendar:[eventEntry defaultCalendarForNewEvents]];
[myAlarmsArray release];
NSError *err;

[eventEntry saveEvent:myEvent span:EKSpanThisEvent error:&err]; 

这适用于iOS 4.x和iPad上的iOS 5中的 me 。但是我收到的报告显示iOS 5下的用户日历中没有添加任何内容。我今天在带有基本默认日历的4S上发现了这个问题:没有崩溃,没有挂起,没有添加到日历中的事件。不幸的是我部署了应用程序而没有记录saveEvent返回的任何潜在错误。我在这里做错了还是有其他人看到过这种行为?

1 个答案:

答案 0 :(得分:2)

最好我可以告诉eventEntry以下更新saveEvent解决了这个问题:

if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"5.0")) {
    [eventEntry saveEvent:myEvent span:EKSpanThisEvent commit:YES error:&err];
} else {
    [eventEntry saveEvent:myEvent span:EKSpanThisEvent error:&err];

请注意显式提交:YES。