Google Calendar API с Android - удалить событие
Я хотел бы удалить событие из календаря с помощью следующего кода:
//insertedEntry: I want to delete it.
"client.executeDelete(insertedEntry);"
in the Class CalendarClient:
" public void executeDelete(Entry entry) throws IOException {
HttpRequest request = requestFactory.buildDeleteRequest(new GenericUrl(entry.getEditLink()));
request.execute().ignore();
} "
В чем дело?
Я начал строить свою модель из этой "базы" (calendar-v2-atom-oauth-sample): http://code.google.com/p/google-api-java-client/source/browse/? репо = образцы #% Hg 2Fcalendar-v2-атом-OAuth-образец% 2Fsrc% 2Fcom% 2Fgoogle% 2Fapi% 2Fclient% 2Fsample% 2Fcalendar% 2Fv2% 2Fmodel
2 ответа
Решение
Добавил это в EventEntry.java:
@Key("@gd:etag")
public String etag;
Добавил это в CalendarClient.java:
public void executeDelete(Entry entry) throws IOException {
HttpRequest request = requestFactory.buildDeleteRequest(new GenericUrl(entry.getEditLink()));
if (entry instanceof EventEntry) {
request.headers.ifMatch = ((EventEntry) entry).etag;
}
request.execute().ignore();
}
Я только что столкнулся с этим, получая 403 Запрещенную ошибку.
Интересно, что CalendarClient.executeDelete работает для CalendarEntry, как показано в этом примере:
Должен продолжать копать, чтобы найти решение для удаления события.