Google日历查询最多可返回25个条目

Dea*_*ill 4 google-calendar-api gdata-api

我正试图从今天开始删除所有日历条目.我运行查询然后在查询结果上调用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();
}
Run Code Online (Sandbox Code Playgroud)

PS:我查看过Data API Developer's GuideGoogle Data API Javadoc.这些网站还可以,但不是很好.有谁知道其他Google API文档?

Jim*_*ler 9

您可以使用增加结果数量myQuery.setMaxResults().但是会有最大值,因此您可以通过更改来进行多次查询("分页"结果)myQuery.setStartIndex().

http://code.google.com/apis/gdata/javadoc/com/google/gdata/client/Query.html#setMaxResults(int) http://code.google.com/apis/gdata/javadoc/com/谷歌/ GDATA /客户端/ Query.html#setStartIndex(int)的