如何在Android设备的日历应用程序上以编程方式填充“提醒”部分?

我需要使用一些预先填充的数据打开 Android设备的日历应用.我使用的逻辑似乎填充了以下字段:

>活动说明
>活动地点
>从日期,到目前为止
>全天活动/没有
>重复/重复信息

我无法填充“提醒”部分,我想填写提醒部分.很高兴能得到一些帮助

这是我用来打开日历应用程序和填充日期的代码.

// Intent to open Calendar Event
Intent intent = new Intent(Intent.ACTION_INSERT)
                .setData(Events.CONTENT_URI);
intent.putExtra(Events.DESCRIPTION,desc);
intent.putExtra(Events.EVENT_LOCATION,location);
intent.putExtra(Events.TITLE,summary);
intent.putExtra(Events.EVENT_TIMEZONE,beginTime.getTimeZone().getID());
intent.putExtra(Events.STATUS,statusStr);
intent.putExtra(Events.VISIBLE,transparency);
intent.putExtra(Events.RRULE,"FREQ=YEARLY;INTERVAL=1;BYYEARDAY=1,2;UNTIL=20161210;");
intent.putExtra(Events.EXDATE,androidExDateStr.toString());

// Not sure on how to use CalendarContract.Reminders,Tried the following but does not seem to be working
intent.putExtra(CalendarContract.Reminders.DESCRIPTION,desc);
intent.putExtra(CalendarContract.Reminders.EVENT_LOCATION,location);
intent.putExtra(CalendarContract.Reminders.TITLE,summary);
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,beginTime.getTimeInMillis());
intent.putExtra(CalendarContract.Reminders.DTSTART,beginTime.getTimeInMillis());
intent.putExtra(CalendarContract.Reminders.EVENT_TIMEZONE,beginTime.getTimeZone().getID());
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,endTime.getTimeInMillis());
intent.putExtra(CalendarContract.Reminders.DTEND,endTime.getTimeInMillis());
intent.putExtra(CalendarContract.Reminders.STATUS,statusStr);

intent.putExtra(CalendarContract.Reminders.RRULE,2;UNTIL=20161210;");
intent.putExtra(CalendarContract.Reminders.EXDATE,androidExDateStr.toString());

//intent.putExtra(CalendarContract.Reminders.METHOD,Reminders.METHOD_EMAIL);
//intent.putExtra(CalendarContract.Reminders.MINUTES,reminderVal) ;

//intent.putExtra(CalendarContract.Events.HAS_ALARM,1);
//} 

try {
    context.startActivity(intent);
} catch(Exception e) {
    e.printStackTrace();
    Log.v(LOG_TAG,"Cannot schedule Calendar event as specified ");

    return false;
}

解决方法

你检查了 http://developer.android.com/guide/topics/providers/calendar-provider.html#reminders的例子吗?
long eventID = 221;
...
ContentResolver cr = getContentResolver();
ContentValues values = new ContentValues();
values.put(Reminders.MINUTES,15);
values.put(Reminders.EVENT_ID,eventID);
values.put(Reminders.METHOD,Reminders.METHOD_ALERT);
Uri uri = cr.insert(Reminders.CONTENT_URI,values);

相关文章

AdvserView.java package com.earen.viewflipper; import an...
ImageView的scaleType的属性有好几种,分别是matrix(默认)...
文章浏览阅读8.8k次,点赞9次,收藏20次。本文操作环境:win1...
文章浏览阅读1.2w次,点赞15次,收藏69次。实现目的:由main...
文章浏览阅读3.8w次。前言:最近在找Android上的全局代理软件...
文章浏览阅读2.5w次,点赞17次,收藏6次。创建项目后,运行项...