Google Calendar API: новые свойства события

#google-calendar-api #gdata-api #gdata

#google-calendar-api #gdata-api #gdata

Вопрос:

Я разрабатываю приложение для Android, которое подключается к Google Calendar с помощью GData API для Google Calendar на Java. До сих пор мне удавалось создавать события, но я мог только задать заголовок, описание и время.

Кто-нибудь знает, где я могу найти ссылку или образец со всеми параметрами, которые я могу установить для события?

Я оставляю вам некоторый код того, чего я достиг на данный момент.

 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);
  

Заранее спасибо.

Mikywan.

Ответ №1:

GData для Google Calendar чертовски хороша. Для каждого свойства, которое вы, возможно, захотите установить или получить, определены средство получения и установщик. Вам просто нужно найти параметр установки / получения в записи события, который соответствует данным, к которым вы хотите получить доступ.

Я оставляю пример того, как отобразить на консоли почти все данные, которые вы, возможно, захотите.

Наслаждайтесь!

 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("ttPARTICIPANT " participant.getValueString());
            System.out.println("tttTYPE: " participant.getAttendeeType());
            System.out.println("tttSTATUS: " 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("ttREMINDER " i);
            System.out.println("tttMETHOD: " reminder.getMethod().toString());
            System.out.println("tttDAYS: " reminder.getDays());
            System.out.println("tttHOURS: " reminder.getHours());
            System.out.println("tttMINUTES: " reminder.getMinutes());                
        }
    }

    //VISIBILITY
    System.out.println("");
    System.out.println("VISIBILITY: " entry.getVisibility().getValue());

    System.out.println("");
    System.out.println("END showCalendarEventEntry");
    System.out.println("-------------------------------------------");
}