Извлечение событий из Календаря Google - PullRequest
2 голосов
/ 03 октября 2011

Сегодня я создал код:

// Create a CalenderService and authenticate
CalendarService myService = new CalendarService("exampleCo-exampleApp-1");
myService.setUserCredentials("j...@gmail.com", "mypassword");

// Send the request and print the response
URL feedUrl = new URL("https://www.google.com/calendar/feeds/default/allcalendars/full");
CalendarFeed resultFeed = myService.getFeed(feedUrl, CalendarFeed.class);
System.out.println("Your calendars:");
System.out.println();
for (int i = 0; i < resultFeed.getEntries().size(); i++) {
CalendarEntry entry = resultFeed.getEntries().get(i);
System.out.println("\t" + entry.getTitle().getPlainText());
}

Этот код выдает список всех календарей.У меня - коробочный календарь, календарь дней рождения друзей и календарь праздников.Мне нужно получать все события, происходящие сегодня - т.е. и мои заметки, и дни рождения друзей, и праздники.Как я могу это сделать?

Этот код возвращает событие для указанного диапазона данных, но это работа только для личного календаря;я попытался заменить «личное» на «все календари», но оно не работает:

URL feedUrl = new URL("https://www.google.com/calendar/feeds/default/private/full");

CalendarQuery myQuery = new CalendarQuery(feedUrl);
myQuery.setMinimumStartTime(DateTime.parseDateTime("2006-03-16T00:00:00"));
myQuery.setMaximumStartTime(DateTime.parseDateTime("2006-03-24T23:59:59"));

CalendarService myService = new CalendarService("exampleCo-exampleApp-1");
myService.setUserCredentials("jo@gmail.com", "mypassword");

// Send the request and receive the response:
CalendarEventFeed resultFeed = myService.query(myQuery, Feed.class);

1 Ответ

2 голосов
/ 10 ноября 2011

Ваша проблема в URL вашего канала.Тот, который вы используете, получает события в календаре по умолчанию .

Чтобы получить другие календари, вы должны заменить default в URL на идентификатор календаря,пример:

feedUrl = new URL("https://www.google.com/calendar/feeds/xxxxxxxxxxxxxxxxx@group.calendar.google.com/private/full");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...