我正在尝试实现我的第一个Android程序。它应该写日历条目(我知道,不是开始编程Andorid的最佳任务)。
我试过了:
Uri CALENDAR_URI = Uri.parse("content://calendar/events");
ContentResolver cr = getContentResolver();
cr.delete(CALENDAR_URI, null, null); // Delete all
cr.delete(CALENDAR_URI, "calendar_id=1", null); // Delete all in default calendar
cr.delete(CALENDAR_URI, "_id=1", null); // Delete specific entry
没有任何效果。我加快了“无法删除该网址”。
插入日历条目很简单:
ContentValues values = new ContentValues();
values.put("calendar_id", 1);
values.put("title", this.title);
values.put("allDay", this.allDay);
values.put("dtstart", this.dtstart.toMillis(false));
values.put("dtend", this.dtend.toMillis(false));
values.put("description", this.description);
values.put("eventLocation", this.eventLocation);
values.put("visibility", this.visibility);
values.put("hasAlarm", this.hasAlarm);
cr.insert(CALENDAR_URI, values);
根据我的插入方法访问日历工作。
谢谢,亚瑟!
答案 0 :(得分:8)
好的,有一点我没试过:
Uri CALENDAR_URI = Uri.parse("content://calendar/events");
int id = 1; // calendar entry ID
Uri uri = ContentUris.withAppendedId(CALENDAR_URI, id);
cr.delete(uri, null, null);
这就是我所缺少的:
Uri uri = ContentUris.withAppendedId(CALENDAR_URI, id);
应该导致内容:// calendar / events / 1
现在我的日历是空的: - )
答案 1 :(得分:1)
从用户日历中删除内容的正确方法是使用相应的GData API并将其从Google日历中删除。操作日历应用程序的内容提供程序 - 正如您尝试的那样 - 不是公共API的一部分。