1

通过 Microsoft CDO 发送的日历项目的格式与直接通过 Exchange 发送的日历项目不同。CDO 格式导致约会在 Android 4.0 中打开时的时间错误。

下面的示例是从运行 ICS 的 Droiz Razr 上收到的 .ics 文件中提取的。

这两个约会都是从 Outlook 2011 客户端发送的。我尝试了原生 Android 邮件客户端和 K-9 邮件客户端。邮件客户端(通常)似乎不处理该文件,只是将其传递给操作系统。似乎该对象是由日历应用程序打开的。(我不清楚为什么有些 Outlook 客户端是通过 CDO 连接的,为什么有些是直接通过 Exchange 连接的,因为所有桌面都在同一个 LAN 上。)

示例 1,CDO:

产品:Microsoft Exchange 的 Microsoft CDO ...

DTSTART;TZID="(GMT-08.00) 太平洋时间(美国和加拿大)":20120921T110000 ...

示例 2,2007 年交易所:

产品:Microsoft Exchange Server 2007 ...

DTSTART;TZID=太平洋标准时间:20120921T110000 ...

在这两种情况下,我都位于 CST,而服务器位于 PST。但是,示例 1 在日历中提前 2 小时显示(似乎忽略或不理解 TZID 设置),而示例 2 正确显示。

这似乎与时区的不同格式有关。似乎 Android 无法识别来自 CDO 的 DTSTART 格式,并假定它是本地时间。

是否有补丁或方法来修补 Android 以便正确解释时区?

提前致谢

DJ

4

0 回答 0