我想将新的日历活动添加到默认的iOS日历中。这很好,直到用户使用Gmail来同步日历。
我使用以下代码:
if (!calendar) {
calendar = [EKCalendar calendarForEntityType:EKEntityTypeEvent eventStore:eventStore];
// set calendar name
[calendar setTitle:@"My calendar"];
EKSource *theSource = [eventStore defaultCalendarForNewEvents].source;
calendar.source = theSource;
// save this in NSUserDefaults data for retrieval later
NSString *calendarIdentifier = [calendar calendarIdentifier];
NSError *error = nil;
BOOL saved = [eventStore saveCalendar:calendar commit:YES error:&error];
if (saved) {
// saved successfuly, store it's identifier in NSUserDefaults
[[NSUserDefaults standardUserDefaults] setObject:calendarIdentifier forKey:@"railplanner_calendar_identifier"];
} else {
// unable to save calendar
return NO;
}
}
启用iCloud或使用本地日历时,此功能正常。 但是,当用户使用Gmail同步日历时,我的自定义日历不会显示在日历列表中。当地的日历也消失了。
有谁知道如何将新活动添加到Gmail(或Google)日历中?
非常感谢提前。
答案 0 :(得分:0)
对于当前的Google日历同步,这可能是不可能的,您可以检测到默认日历的类型,并且在Google使用相关的Google iPhone API来创建新日历的情况下(我知道并不是真的有帮助)