5

我正在使用谷歌日历 API。我已通过此代码向事件添加提醒

ContentValues values1 = new ContentValues();

values1.put("event_id", eventId);

values1.put("method", 1);

values1.put( "minutes", reminderValue );

Uri reminder = Uri.parse("content://com.android.calendar/reminders");

this.getContentResolver().insert(reminder, values1);

我的问题是我知道如何添加提醒。我需要查询以更新提醒。通过这段代码,它为一个事件添加了多个提醒。

请帮我。

谢谢

4

1 回答 1

4

我认为您不能直接更新已设置的提醒。首先您应该使用以下代码获取需要更新的提醒的 ID:

String[] projection = new String[] {
        CalendarContract.Reminders._ID,
        CalendarContract.Reminders.METHOD,
        CalendarContract.Reminders.MINUTES
};

Cursor cursor = CalendarContract.Reminders.query(
    contentResolver, eventId, projection);
while (cursor.moveToNext()) {
    long reminderId = cursor.getLong(0);
    int method = cursor.getInt(1);
    int minutes = cursor.getInt(2);

    // etc.

}
cursor.close();

然后使用此提醒ID,您必须使用以下代码删除已设置的提醒:

Uri reminderUri = ContentUris.withAppendedId(
CalendarContract.Reminders.CONTENT_URI, reminderId);
int rows = contentResolver.delete(reminderUri, null, null);

然后使用您的代码再次插入提醒。希望这有助于...

于 2013-08-29T04:50:13.410 回答