如何在本地EventStore中检测谷歌日历

时间:2014-02-27 13:14:43

标签: ios iphone objective-c calendar

在设置iPhone时,我登录了谷歌日历。 我编写了一个iPhone应用程序,它可以检测属于上面登录的谷歌日历的事件。

EKEventStore* eventStore;
eventStore = [[EKEventStore alloc] init];
NSPredicate* predicate = [eventStore predicateForEventsWithStartDate:firstDate endDate:lastDate calendars:eventStore.calendars];
NSArray* fetchedEvents = [eventStore eventsMatchingPredicate:predicate];
for(EKEvent* ecEvent in fetchedEvents)
{
   // How to do
}
  1. 我该怎么做?

  2. 我也在研究,但几乎要:

  3. 方法1:用户选择日历的程序(包括谷歌日历)

    方法2:获取默认日历的程序(可能是谷歌日历)

    方法3:使用其他方法对登录并获取与Using Google Calendar Api in iPhone相同的Google日历的应用程序进行编程。

    感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

问:问题1,这将告诉您该事件是否属于Google日历:

EKCalendar *calendar = event.calendar;
if ([[calendar source] sourceType] == EKSourceTypeCalDAV &&
    [[[calendar source] title] isEqualToString:@"Gmail"])
    NSLog(@"found a Gcal event");

有时(如果配置了多个Google帐户)[[calendar source] title]将返回gmail地址而不是@" Gmail",因此您可能也想检查该地址。