我已成功将事件添加到本机日历中,并且在Android API级别14或更高版本中正常运行.
我尝试了@VishalKhakhkhar的代码,但仍然无法解决此问题?我收到错误消息:在运行2.3.6的设备上进行测试时,没有发现活动可以处理Intent {act = android.intent.action.EDIT typ = vnd.android.cursor.item / event
请在下面查看我的更新代码,尝试解决此问题:
Button btnEvents = (Button) findViewById(R.id.button1);
btnEvents.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
long startMillis = 0;
long endMillis = 0;
Calendar beginTime = Calendar.getInstance();
beginTime.set(2014, 1, 16, 16, 0);
startMillis = beginTime.getTimeInMillis();
Calendar endTime = Calendar.getInstance();
endTime.set(2014, 1, 16, 22, 30);
endMillis= endTime.getTimeInMillis();
if (Build.VERSION.SDK_INT >= 14) {
Intent intent = new Intent(Intent.ACTION_EDIT).setData(Events.CONTENT_URI)
.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, startMillis)
.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endMillis)
.putExtra(Events.TITLE, "Title")
.putExtra(Events.DESCRIPTION, "Description")
.putExtra(Events.EVENT_LOCATION, "Location")
.putExtra(Reminders.HAS_ALARM, true)
.putExtra(Reminders.METHOD, Reminders.METHOD_DEFAULT);
startActivity(intent);
} else {
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("title", "Title");
intent.putExtra("description", "Description");
intent.putExtra("beginTime", startMillis);
intent.putExtra("allDay", false);
intent.putExtra("endTime", endTime.endMillis);
intent.putExtra("eventLocation", "Location");
intent.putExtra("hasAlarm", 1);
startActivity(intent);
}
}
});
}