google-calendar-api - 列出共享到服务帐户的所有日历
问题描述
我正在开发一个需要从服务帐户搜索不同日历中的事件的 android 应用程序。日历已与服务帐户共享,我可以使用“Calendar.get (”calendar.id)”访问每个日历,但我希望能够列出与该帐户共享的所有日历,而无需知道具体每个人的ID。
调查我发现默认情况下共享到服务帐户的日历不会直接添加到 Calendarlist,因此“Calendarlist.list()”返回一个空对象“[]”。
有没有办法列出所有共享日历?
解决方案
如果要列出已与服务帐户共享的日历(通过CalendarList: list),则应首先通过CalendarList: insert单独插入相应的日历。
当然,这需要了解id
这些日历中的每一个。没有其他方法可以解决它。
如果您的应用程序工作流程允许,我建议CalendarList: insert
在每个日历的共享过程中调用。
替代方案:域范围的委派:
此外,如果使用服务帐户的目的是避免用户交互,您可以授予它域范围的权限并使用它来模拟普通帐户(日历将与之共享的帐户)。这样,CalendarList
无需调用即可添加日历CalendarList: insert
。