有人可以解释在向android日历添加事件时如何使用EXDATE
吗?关于应该放置EXDATE
的格式,文档很不清楚。
我尝试了很多格式,其中一些是:
values.put(Events.EXDATE, "TZID=Europe/London:20130116T080000");
values.put(Events.EXDATE, "20130116T080000Z");
values.put(Events.EXDATE, "20130116T080000");
values.put(Events.EXDATE, "20130116");
但它们都不起作用。
如果事件出现在RRULE
,那么任何想法如何使某个事件不会出现在特定日期?
答案 0 :(得分:5)
正确的格式是:
values.put(Events.EXDATE, "20130116T080000Z");
但是,您必须确保它处于UTC时间。我从PST开始遇到同样的问题,所以我只需要增加8个小时才能让它工作。
答案 1 :(得分:1)
除了@ kee23的答案外,下一个变量对多个 EXDATE 值有效:
contentValues.put(CalendarContract.Events.EXDATE, "20130116T080000Z,20130118T080000Z");
答案 2 :(得分:0)
我在@ kee23上添加了优秀而正确的答案:
我刚刚意识到在android中,你无法将EXDATE持久存储到无限重复的事件中,比如说RRULE:FREQ=DAILY
。您需要限制出现次数,如RRULE:FREQ=DAILY;COUNT=600
。
谷歌没有记录这一点,如果您尝试使用EXDATE持续无休止的重复,则没有错误消息。在我的情况下,它只是默默地放弃了RRULE和DURATION。