为什么Google Calendar API V3不接受所有时区ID?

时间:2014-03-05 07:17:40

标签: google-api google-calendar-api google-oauth google-apps gdata-api

我们正在添加开始时间和结束时间的事件,如下面的代码段

EventDateTime startEventDateTime = new EventDateTime().setDateTime(startDateTime).setTimeZone(timeZone);
EventDateTime endEventDateTime = new EventDateTime().setDateTime(endDateTime).setTimeZone(timeZone);

如果时区为"Asia/Calcutta""GMT +05:30",则会在Google日历中成功添加,但我们的某些用户时区类似于"IST","PST","CST"。如果我们在timeZone变量中给出它,Google Calendar会抛出

"Invalid time zone definition for start time." 

即使时区与"IST","PST","CST","EST"相似,是否可以接受?

2 个答案:

答案 0 :(得分:0)

时区的格式应与Google日历时区链接中显示的格式相同。

答案 1 :(得分:0)

为了与JDK 1.1.x兼容,还支持其他一些三字母时区ID(例如“PST”,“CTT”,“AST”)。但是,它们的使用已被弃用,因为相同的缩写通常用于多个时区(例如,“CST”可能是美国“中央标准时间”和“中国标准时间”),然后Java平台只能识别其中一个他们。因此,谷歌可能不接受三个字母的时区ID。