это мой код для добавления события в мой календарь (MyFragment):
int id = 20002000;
Calendar cal = Calendar.getInstance();
Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra(CalendarContract.Events._ID, id);
intent.putExtra(CalendarContract.Calendars.ACCOUNT_NAME,"xxxx@hotmail.com");
intent.putExtra(CalendarContract.Calendars.ACCOUNT_TYPE,CalendarContract.ACCOUNT_TYPE_LOCAL);
intent.putExtra(CalendarContract.Events.TITLE, myTitle);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
Date date = new Date();
GregorianCalendar calDate = new GregorianCalendar();
try {
date = sdf.parse(stringtodate);
calDate.setTime(date);
} catch (ParseException e) {
e.printStackTrace();
}
if (date.before(new Date())) {
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,new Date().getTime());
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, new Date().getTime());
}else{
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, calDate.getTimeInMillis());
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, calDate.getTimeInMillis());
}
intent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true);
startActivity(intent);
это мой метод получения события по заданному идентификатору (MainActivity)
Uri uri = ContentUris.withAppendedId(CalendarContract.Events.CONTENT_URI, 20002000);
Intent intent = new Intent(Intent.ACTION_VIEW).setData(uri);
startActivity(intent);