【发布时间】:2011-02-08 10:51:22
【问题描述】:
我正在尝试删除从今天开始的所有日历条目。我运行一个查询,然后在查询结果上调用 getEntries()。 getEntries() 总是返回 25 个条目(如果日历上的条目少于 25 个,则返回更少)。为什么没有返回所有条目?我预计大约有 80 个条目。
作为测试,我尝试运行查询,删除返回的 25 个条目,再次运行查询,再次删除等。这可行,但必须有更好的方法。
下面是只运行一次查询的 Java 代码。
CalendarQuery myQuery = new CalendarQuery(feedUrl);
DateFormat dfGoogle = new SimpleDateFormat("yyyy-MM-dd'T00:00:00'");
Date dt = Calendar.getInstance().getTime();
myQuery.setMinimumStartTime(DateTime.parseDateTime(dfGoogle.format(dt)));
// Make the end time far into the future so we delete everything
myQuery.setMaximumStartTime(DateTime.parseDateTime("2099-12-31T23:59:59"));
// Execute the query and get the response
CalendarEventFeed resultFeed = service.query(myQuery, CalendarEventFeed.class);
// !!! This returns 25 (or less if there are fewer than 25 entries on the calendar) !!!
int test = resultFeed.getEntries().size();
// Delete all the entries returned by the query
for (int j = 0; j < resultFeed.getEntries().size(); j++) {
CalendarEventEntry entry = resultFeed.getEntries().get(j);
entry.delete();
}
PS:我看过Data API Developer's Guide 和Google Data API Javadoc。这些网站还可以,但不是很好。有人知道其他 Google API 文档吗?
【问题讨论】:
标签: gdata-api google-calendar-api