-1

我正在开发一个应用程序,它将约会记录从我的应用程序复制到设备本机日历。我正在使用以下代码来做到这一点。

NSString *eventIde = nil;

EKEventStore *eventStore = [[EKEventStore alloc] init];
EKCalendar *calendarDef = [eventStore defaultCalendarForNewEvents];
EKEvent *event  = [EKEvent eventWithEventStore:eventStore];
[event setCalendar:calendarDef];

//set values to this event. like title, notes, startDate, endDate, location

NSError *err1 = nil;    
BOOL isStoredd = [eventStore saveEvent:event span:EKSpanThisEvent commit:YES error:&err1];

if(isStoredd){
       eventIde = [NSString stringWithString:event.eventIdentifier];  
}

在这里,我为我的应用程序中的每个约会创建 EKEvents,设置适当的值,并将事件保存到事件存储。这是对大约 200 条记录同时完成的。它在 iOS6 中运行良好,当我将 ipad 更新到 iOS7 时,它会导致设备重新启动。我对记录数 50 进行了同样的尝试,然后也出现了同样的问题。

有时它会显示内存过多问题,有时会显示“响应 SpringBoard 的终止而终止”。我需要将 eventIdentifier 输入到我的数据库中以供进一步使用。但是每次发生此问题并且设备重新启动时。

有人可以帮我解决这个问题吗?iOS7 eventstore 有什么特别之处?或者请建议任何解决方案来克服这个问题。

谢谢

4

1 回答 1

0

Apple.com 上日历和提醒编程指南的第一部分有你的答案。

除非您有多个日历,例如 FB 事件,否则您不会多次分配商店。

我强烈推荐 Apple 的指南,它们通常比 3rd 方书籍更容易。

于 2013-10-23T06:11:38.897 回答