我正在为用户提供一个按钮,可以将日常活动添加到他们的日历中,其中包含以下两个警报:
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返回的任何潜在错误。我在这里做错了还是有其他人看到过这种行为?
答案 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。