Из моего приложения я запускаю календарь с намерением:
Calendar cal = Calendar.getInstance();
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("beginTime", cal.getTimeInMillis());
intent.putExtra("allDay", true);
intent.putExtra("rrule", "FREQ=YEARLY");
intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000);
intent.putExtra("title", "Some title");
startActivity(intent);
Я не могу понять, как вернуть идентификатор события, если пользователь идет вперед и сохраняет эту предварительно заполненную запись календаря. Я также хочу знать, отменил ли пользователь приглашение календаря и не сохранил это новое предварительно заполненное событие.
Есть ли что-нибудь релевантное, возвращаемое onActivityResult (...), которое я мог бы использовать в качестве ссылки на событие календаря? Мне нужно это, поэтому я могу позже найти/открыть календарное событие для просмотра/редактирования.
[Обновить:] Да, попробовал onActivityResult (...), и намерение возвращается, как только календарь открывается перед любым взаимодействием с пользователем, поэтому это бесполезно.
Я хотел бы сделать это, передав приложение календаря, используя намерение (также, чтобы позволить пользователю выбрать из различных календарей, доступных на устройстве) и избежать воссоздания UE календаря из моего приложения. Также я хотел бы поддержать Android 2.2+ как минимум.