Google 日历不是从主日历获取事件

Google Calendar get event not from primary calendar

我尝试获取不在主日历中的事件(仅限会议)

我在 Java (Android) 中接线。我做了什么:

// List the next 10 events from the primary calendar.
        List<EventDetail> eventDetails = new ArrayList<>();
        Events events = mService.events().list("primary")
                .setMaxResults(10)
                .setTimeMin(now)
                .setTimeMax(end)
                .setOrderBy("startTime")
                .setSingleEvents(true)
                .execute();

基本上,您必须浏览特定帐户的所有日历,然后决定要从哪个日历中获取事件。然后将特定的日历 Id 传递给事件 table 或实例 table 以获取事件。

Calendars Contract

Events Contract

从你的图片来看,一个账户可能有多个日历。

我找到了解决方案 -

        CalendarList calendarList = mService.calendarList().list().execute();
        List<CalendarListEntry> list = calendarList.getItems();

        for (CalendarListEntry calendarListEntry : list) {
            System.out.println(calendarListEntry.getSummary());
            Log.d(TAG, "Calender Id: " + calendarListEntry.getId());
        }