0

如何在大于 8 的 android api 级别中添加日历事件?

ContentResolver cr = getContentResolver();
Cursor cursor = null;
try{
    if(Build.VERSION.SDK_INT >= 8){
        cursor=cr.query(Uri.parse("content://com.android.calendar/reminders"), null, null, null, null);
    }else {
        cursor=cr.query(Uri.parse("content://calendar/reminders"), null, null, null, null);
    }

但我在 api 级别 8 到 10 中获得了光标空值,但它适用于 api 4.2。如何获取日历事件或提醒的光标?

4

1 回答 1

0

从您的问题和代码中,我不清楚您是要实际添加日历事件还是查询现有日历事件。如果您确实想添加日历事件,则需要使用 Intent。例如:

Intent calendarIntent = new Intent(Intent.ACTION_INSERT);
calendarIntent.setType("vnd.android.cursor.item/event");
calendarIntent.putExtra(Events.TITLE, "the title");
calendarIntent.putExtra(Events.EVENT_LOCATION, "the location");
calendarIntent.putExtra(Events.DESCRIPTION, "some description");

calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, start);
calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, end);
startActivity(calendarIntent);

其中“开始”和“结束”是表示日期的长值。

于 2013-05-30T12:35:02.943 回答