Android - 通过Intent添加日历事件 - 可用性值不会更新

时间:2012-09-24 23:44:41

标签: android android-intent calendar

我通过传递intent来使用startActivity创建日历事件。日历事件成功创建,除了可用性信息之外,我还能够看到我传递的所有信息。无论发送什么,可用性都保持忙碌。难道我做错了什么。我的代码如下。

  Intent intent = new Intent(Intent.ACTION_EDIT);
  intent.setType("vnd.android.cursor.item/event");
  intent.putExtra("beginTime", dtstart);
  intent.putExtra("allDay", false);
  intent.putExtra("endTime", dtend);
  intent.putExtra("title", "blah blah");
  intent.putExtra("description", "blah blah and more blah");
  intent.putExtra("availability", 1);
  ctx.startActivity(intent);

1 个答案:

答案 0 :(得分:0)

在Android 4.0或更高版本中,CalendarContract可以如下使用,它也可以正确更新可用性....

     Intent intent = new Intent(Intent.ACTION_INSERT)
    .setData(Events.CONTENT_URI)
    .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
    .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
    .putExtra(Events.TITLE, "Test Title")
    .putExtra(Events.DESCRIPTION, "Description")
    .putExtra(Events.EVENT_LOCATION, "Location")
    **.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)**
    .putExtra(Intent.EXTRA_EMAIL, "test1@example.com,test2@example.com");
     startActivity(intent);