对于学生应用程序,我实现了日历导入功能。将从学校网站下载一个 ICS 文件,该网站有几个事件。所有事件都是单个事件,而不是 ics 文件中的重复事件。导入工作没有问题。但是,当我想删除所有导入的事件时,有时会收到一条消息,指出无法同步记录。我现在想的是:
- 解析所有事件的 ICS 文件
- 尝试将事件合并为重复事件
- 将重复事件导入日历
但无论我做什么都行不通。任何一个事件都被标记为重复但按预期每月而不是每周。或者继续作为单个事件导入。
这是我尝试过的最后一个代码。
ContentValues event = new ContentValues();
event.put("calendar_id", calId);
event.put("title", title);
event.put("description", "[HSLU_TAAPP_IMPORTED]");
event.put("eventLocation", location);
event.put("eventTimezone", "GMT+1");
long startTime = startDateTime.getTimeInMillis();
startDateTime.add(Calendar.HOUR, 1);
long endTime = startDateTime.getTimeInMillis();
event.put("dtstart", startTime);
event.put("rrule", "FREQ=WEEKLY");
event.put("dtend", endTime);
Uri eventsUri = Uri.parse(getCalendarUriBase()+"events");
Uri insertedUri = _activity.getContentResolver().insert(eventsUri, event);
return insertedUri;
任何人都可以给我一个如何做正确的例子吗?或者是否有另一种方法可以消除“无法同步”消息?