Sea*_*oth 2 events google-calendar-api google-api flutter
Flutter,谷歌日历 API v3 https://pub.dartlang.org/packages/googleapis
作品:
Future<List<Event>> getEvents() =>
calendarApi.events.list("primary",
)
.then((Events events){
return events.items;
}).catchError((e){
print("error encountered");
print("${e.toString()}");
});
Run Code Online (Sandbox Code Playgroud)
不起作用:
DateTime start = new DateTime.now().subtract(new Duration(days: 10));
DateTime end = new DateTime.now().add(new Duration(days: 10));
..
Future<List<Event>> getEvents() =>
calendarApi.events.list("primary",
timeMin: start,
timeMax: end,
)
.then((Events events){
return events.items;
}).catchError((e){
print("error encountered");
print("${e.toString()}");
});
Run Code Online (Sandbox Code Playgroud)
小智 7
根据 Google 日历 API,timeMin 和 timeMax 值必须遵循 RFC3339 日期标准。
日历.toIso8601String()在内部适用于您传入的日期时间。但是,这不会使它们成为有效的 RFC3339 日期。
.toUtc()在传入它们之前调用将使它们成为有效的 RFC3339。您可以在DartPad 中与Googles Api explorer一起尝试,您将看到不同的响应。
可能有更多方法可以使 DateTime RFC3339 兼容,但这至少应该指向错误。