【问题标题】:Google Calendar API: New event propertiesGoogle Calendar API:新事件属性
【发布时间】:2011-05-15 06:07:39
【问题描述】:

我正在开发一个使用GData API for Google Calendar in Java 连接到Google Calendar 的Android APP。到目前为止,我已经设法创建事件,但我只能设置标题、描述和时间。

有人知道我在哪里可以找到包含我可以为事件设置的所有参数的参考或示例吗?

我给你留下一些我到目前为止所取得的成就的代码。

CalendarService calendarService = new CalendarService("CalendarAPP");
calendarService.setUserCredentials(<username>, <password>);
URL postUrl = new URL("https://www.google.com/calendar/feeds/<GMAIL ACCOUNT>/private/full");
CalendarEventEntry myEntry = new CalendarEventEntry();

myEntry.setTitle(new PlainTextConstruct("Tennis with Beth"));
myEntry.setContent(new PlainTextConstruct("Meet for a quick lesson."));

DateTime startTime = DateTime.now();
DateTime endTime = DateTime.now();
When eventTimes = new When();
eventTimes.setStartTime(startTime);
eventTimes.setEndTime(endTime);
myEntry.addTime(eventTimes);

CalendarEventEntry insertedEntry = connection.getCalendarService().insert(postUrl, myEntry);

提前致谢。

米基万。

【问题讨论】:

    标签: google-calendar-api gdata-api gdata


    【解决方案1】:

    谷歌日历的 GData 非常好。对于您可能想要设置或获取的每个属性,都定义了一个 Getter 和一个 Setter。您只需在事件条目上寻找适合您要访问的数据的 setter/getter。

    我留下一个示例,说明如何在控制台上显示您可能想要的几乎所有数据。

    享受吧!

    private static void showCalendarEventEntry(CalendarEventEntry entry) {
        assert entry != null;
        System.out.println("-------------------------------------------");
        System.out.println("START showCalendarEventEntry");
        System.out.println("");
        System.out.println("ID: " + entry.getId());
        System.out.println("TITLE: "+entry.getTitle().getPlainText());
        System.out.println("DESCRIPTION: "+entry.getPlainTextContent());
        System.out.println("LOCATION: "+entry.getLocations().get(0).getValueString());
    
        System.out.println("");
        System.out.println("TIMES");
        if (entry.getTimes().size() > 0) {
            When eventTimes = entry.getTimes().get(0);
            if (eventTimes.getStartTime().isDateOnly()) {
                System.out.println("\tWHEN: ALL DAY");
            } else {
                System.out.println("\tWHEN: TIME");
            } 
    
            if (entry.getRecurrence() != null)
                System.out.println("\tRECURRENCE: "+entry.getRecurrence().toString()); 
    
            System.out.println("\tSTART TIME: "+eventTimes.getStartTime());
            System.out.println("\tEND TIME: "+eventTimes.getEndTime());
        }
    
        System.out.println("");
        System.out.println("PARTICIPANTS");
        System.out.println("\t"+(entry.getParticipants().size()) + " PARTICIPANTS");
        if (entry.getParticipants().size() > 0){
    
            for (int i=0; i<entry.getParticipants().size(); i++) {
                EventWho participant = entry.getParticipants().get(i);
                System.out.println("\t\tPARTICIPANT "+participant.getValueString());
                System.out.println("\t\t\tTYPE: "+participant.getAttendeeType());
                System.out.println("\t\t\tSTATUS: "+participant.getAttendeeStatus());
            }
            if (entry.isGuestsCanInviteOthers())
                System.out.println("\tGUESTS CAN INVITE OTHERS: ");
            if (entry.isGuestsCanModify())
                System.out.println("\tGUESTS CAN MODIFY");
            if (entry.isGuestsCanSeeGuests())
                System.out.println("\tGUESTS CAN SEE GUESTS");
        } 
    
        //REMINDERS
        System.out.println("");
        System.out.println("REMINDERS");
        System.out.println("\t"+entry.getReminder().size()+" REMINDERS");
        if (entry.getReminder().size() > 0) {
            for (int i=0; i<entry.getReminder().size(); i++) {
                Reminder reminder = entry.getReminder().get(i);
                System.out.println("\t\tREMINDER "+i);
                System.out.println("\t\t\tMETHOD: "+reminder.getMethod().toString());
                System.out.println("\t\t\tDAYS: "+reminder.getDays());
                System.out.println("\t\t\tHOURS: "+reminder.getHours());
                System.out.println("\t\t\tMINUTES: "+reminder.getMinutes());                
            }
        }
    
        //VISIBILITY
        System.out.println("");
        System.out.println("VISIBILITY: "+entry.getVisibility().getValue());
    
        System.out.println("");
        System.out.println("END showCalendarEventEntry");
        System.out.println("-------------------------------------------");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-09
      • 2018-09-18
      相关资源
      最近更新 更多