Календарь Google, получить местоположение? - PullRequest
0 голосов
/ 07 сентября 2011

Я использую JAVA и gdata api, работая над Календарем Google. Я пытаюсь получить местоположение события из общедоступного календаря. вот мой подход:

private static void getCalendarEvents (CalendarService service, URL feedURL) 
        throws IOException, ServiceException{

        CalendarFeed resultFeed = service.getFeed(feedURL, CalendarFeed.class);
        for(int i = 0; i < resultFeed.getEntries().size(); i++){
        CalendarEntry entry = resultFeed.getEntries().get(i);


        System.out.println("\t" + entry.getLocations());

    }

и в моей консоли для части "entry.getLocation ()" я продолжал получать следующие результаты:

[com.google.gdata.data.extensions.Where@1f3785d3]
[com.google.gdata.data.extensions.Where@1f3785d3]
....

Согласно описанию, метод должен возвращать тип List, но, видимо, я его не получил. У кого-нибудь есть идеи, почему я получаю это значение? Или как я могу получить доступ к правильному возвращаемому значению?

Пожалуйста, также посмотрите код CalendarEntry.class здесь на Google Code: http://www.google.com/codesearch#EOYaOg_yTgg/trunk/java/src/com/google/gdata/data/calendar/CalendarEntry.java

Большое спасибо.


Ну, спасибо! Я публикую свой код, который не смог получить дату события, пожалуйста, посмотрите. Во-первых, мой метод getEventDates.class возвращает список объектов When:

 private static List<When> getEventDates(CalendarEntry entry){
    return entry.getRepeatingExtension(When.class);

}

и я называю это ниже:

for(int i = 0; i < resultFeed.getEntries().size(); i++){
        CalendarEntry entry = resultFeed.getEntries().get(i);
        List<When> timeList = getEventDates(entry);
        System.out.println("\t" + i+". "+entry.getTitle().getPlainText() + "\t" + timeList.get(0).getValueString());

    }

эта лучшая работа ... что означает, что я получил все "нулевые" значения в timeList. Я просто хочу иметь содержимое в XML, пожалуйста, дайте мне подсказку. Большое спасибо !!

1 Ответ

0 голосов
/ 07 сентября 2011

Вызов entry.getLocations () возвращает список объектов Where, которые вы можете перебирать.

Например, вы можете использовать метод getValueString () каждого экземпляра Where, чтобы получить строку, содержащую текстописание местоположения.

См. http://code.google.com/p/gdata-java-client/source/browse/trunk/java/src/com/google/gdata/data/extensions/Where.java для определения класса Где.

...