Проблема с методом Google Calendar API "getTimes ()" - PullRequest
1 голос
/ 17 мая 2010

Я пытаюсь получить несколько сведений из API календаря Google в JAVA.При попытке получить доступ к информации о времени события у меня возникла проблема.Я делаю следующее:

CalendarService myService = new CalendarService("project_name");
myService.setUserCredentials("user", "pwd");
URL feedUrl = new URL("http://www.google.com/calendar/feeds/default/private/full");
CalendarQuery q = new CalendarQuery(feedUrl);
CalendarEventFeed resultFeed = myService.query(q, CalendarEventFeed.class);
for (int i = 0; i < resultFeed.getEntries().size(); i++) {
              CalendarEventEntry g = resultFeed.getEntries().get(i);
List<When> t = g.getTimes();
//other operations
}

Список t, полученный с помощью getTimes () для CalendarEventEntry, равен всегда пуст , и я не могу понять, почему.Это кажется мне странным, поскольку для календарного события всегда должно существовать описание того, когда это должно произойти ... что я пропускаю ??

Ответы [ 2 ]

1 голос
/ 06 сентября 2010

Вы должны быть осведомлены или единичные события против повторяющихся событий:

getTimes используется для одноразовых событий.

Для повторяющихся событий вы должны использовать getRecurrence()

Или вы можете установить для свойства singleevents значение true, чтобы повторяющиеся события возвращались как отдельные события, а getTimes будет возвращать непустой список:

CalendarQuery q = new CalendarQuery(feedUrl);
q.setStringCustomParameter("singleevents", "true");
CalendarEventFeed resultFeed = myService.query(q, CalendarEventFeed.class);
// process the results as single-events now...

Ссылка: ищите текст "singleevents" здесь .

Примечание: если вы используете URL-адрес волшебного файла cookie для доступа к каналу, то повторяющиеся события всегда возвращаются как повторяющиеся события, независимо от того, как установлено свойство singleevents в запросе.

0 голосов
/ 14 марта 2011

Этот запрос в службу поддержки Google также актуален. (Тот же ответ, что и при условии, но с дополнительной информацией)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...