使用此代码,我的队友正在添加日历活动。这没有问题。日历活动显示在Google日历中。
TimeZone timeZone = TimeZone.getDefault();
ContentResolver cr = getContentResolver();
ContentValues values = new ContentValues();
values.put(CalendarContract.Events.EVENT_TIMEZONE, timeZone.getID());
values.put(CalendarContract.Events.DTSTART, startInMillis);
values.put(CalendarContract.Events.DTEND, endInMillis);
values.put(CalendarContract.Events.TITLE, title);
values.put(CalendarContract.Events.EVENT_LOCATION, "Raum: " + location);
values.put(CalendarContract.Events.DESCRIPTION,
"Dauer der Veranstaltung: " + duration + " min" + "---|---Dozent: "
+ organizer.trim() + "---|---Course added by UNIDATE---|");
values.put(CalendarContract.Events.CALENDAR_ID, 1);
Uri uri = cr.insert(CalendarContract.Events.CONTENT_URI, values);
ContentUris.withAppendedId(uri, id);
但是现在我想通过他们的id删除这些事件。我已经使用过这段代码(其中包括):
long selectedEventId = 1;
String[] selArgs = new String[]{Long.toString(selectedEventId)};
int deleted = getContentResolver().delete(CalendarContract.Events.CONTENT_URI, Events._ID + " =? ", selArgs);
这不起作用。我也尝试添加
values.put(CalendarContract.Events._ID, id);
答案 0 :(得分:0)
一个简单的解决方案是首先清除日历事件,然后添加相关事件。
清除日历事件可以通过调用:
来完成context.getContentResolver().delete(CalendarContract.Events.CONTENT_URI, CalendarContract.Events.CALENDAR_ID + " = ?", new String[]{String.valueOf(calendarId)});