Что я хочу: Я хочу добавить календарь событий в Android 2.2.
Что у меня есть: Я добавил событие, используя следующий код
Uri calendars = Uri.parse("content://com.android.calendar/events");
Cursor managedCursor = managedQuery(calendars, null, null, null, null);
startManagingCursor(managedCursor);
managedCursor.moveToFirst();
String ID = null;
do
{
ID = managedCursor.getString(managedCursor.getColumnIndexOrThrow("_id"));
}
while (managedCursor.moveToNext());
managedCursor.close();
int NewID = Integer.parseInt(ID) + 1;
ContentValues event = new ContentValues();
event.put("calendar_id", NewID); // --- Some confusion Here with the ID,
// --- not sure how to use it here
event.put("title", "New Event Title");
event.put("description", "Event Desc");
event.put("eventLocation", "Somewhere");
long startTime = System.currentTimeMillis() + 1000 * 60 * 60;
long endTime = System.currentTimeMillis() + 1000 * 60 * 60 * 2;
event.put("dtstart", startTime);
event.put("dtend", endTime);
event.put("allDay", 0); // 0 for false, 1 for true
event.put("eventStatus", 1);
event.put("visibility", 0);
event.put("transparency", 0);
event.put("hasAlarm", 0); // 0 for false, 1 for true
Uri eventsUri = Uri.parse("content://com.android.calendar/events");
Uri insertedUri = getContentResolver().insert(eventsUri, event);
В чем проблема:
До сих пор я успешно добавлял одно событие в указанное время, и, по-видимому, роль NewID мне кажется подозрительной. Когда я пытаюсь добавить какое-то другое событие, я получаю возвращенный Uri вставленный Uri , и он показывает мне недавно добавленный идентификатор в конце URI. Но я не вижу такого события на устройстве. Может быть, в моем понимании календаря и событий есть какая-то проблема, или различия в обоих и их идентификаторах. Пожалуйста, наведите меня, что я пропускаю или делаю неправильно.
С уважением,
Хавар