我正在尝试通过新的iOS方法calendarItemWithIdentifier查找日历事件。我无法使用eventWithIdentifier,因为在事件与服务器同步后标识符已更改。 calendarItemIdentifier不是。
但calendarItemWithIdentifier总是返回(null)。
EKEventStore *store = [[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (granted) {
// Create event.
EKEvent *event = [EKEvent eventWithEventStore:store];
event.title = self.title;
event.startDate = [[NSDate date] dateByAddingTimeInterval:3600];
event.endDate = [[NSDate date] dateByAddingTimeInterval:7200];
event.timeZone = [NSTimeZone defaultTimeZone];
event.calendar = [store defaultCalendarForNewEvents];
BOOL success = [store saveEvent:event span:EKSpanThisEvent commit:YES error:&error];
if (success)
{
NSString *calendarItemIdentifier = event.calendarItemIdentifier;
NSLog(@"Assigned identifier: %@", calendarItemIdentifier);
// Look up the event in the calendar.
event = (EKEvent *)[store calendarItemWithIdentifier:calendarItemIdentifier];
if (event) {
NSLog(@"FOUND");
} else {
NSLog(@"NOT FOUND");
}
}
}
}];
来自日志:
2013-01-13 10:32:52.042 CalendarIntegration[6095:1303] Assigned identifier: C5FD3792-EBF1-4766-B27D-2767E5C8F3BE
2013-01-13 10:32:52.043 CalendarIntegration[6095:1303] NOT FOUND
帮助将不胜感激。