Как узнать, что событие, созданное с использованием намерения, успешно создано

#android #android-intent #android-calendar

Вопрос:

Я использовал следующий код для вставки события в календарь:

   fun addToCalenderAction(ctx: Context, session: ItemSession) {
    val intent = Intent(Intent.ACTION_INSERT).apply {
        data = CalendarContract.Events.CONTENT_URI
        putExtra(CalendarContract.Events.TITLE, session.title ?: "AA")
        putExtra(CalendarContract.Events.EVENT_LOCATION, session.location
                ?: "Egypt, ALex, ST23")
        putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, parseTimeOfFirebase(session.startTime
                ?: "2021-05-31T19:56:22.636 0000"))
        putExtra(CalendarContract.EXTRA_EVENT_END_TIME, parseTimeOfFirebase(session.endTime
                ?: "2021-05-31T21:56:22.636 0000"))

    }
    if (intent.resolveActivity(ctx.packageManager) != null) {
        (ctx as? Activity)?.let {
            it.startActivityForResult(intent, REQUEST_CODE_ADD_EVENT)
        }
    }
}
 

Я привык it.startActivityForResult(intent, REQUEST_CODE_ADD_EVENT) знать состояние действия, но я получаю тот же результат в случае добавления, а также в случае, если пользователь отклоняет событие добавления.

Примечание:

В случае успеха добавьте в систему тост с текстом «Событие создано».