【发布时间】:2021-11-01 13:41:50
【问题描述】:
如何获取我添加到 kotlin 日历中的日历事件? 我想打算日历然后当我们回来然后从日历中获取事件并将其展示给我们,我们该怎么做?
这就是我对日历的意图:
private fun addEventOnCalendar(jdn: Jdn) {
val activity = this ?: return
if (ActivityCompat.checkSelfPermission(
activity,
Manifest.permission.READ_CALENDAR
) != PackageManager.PERMISSION_GRANTED
)
activity.askForCalendarPermission()
else {
runCatching { addEvent.launch(jdn) }.onFailure(logException).onFailure {
}
}
}
private val addEvent =
registerForActivityResult(object : ActivityResultContract<Jdn, Void?>() {
override fun parseResult(resultCode: Int, intent: Intent?): Void? = null
override fun createIntent(context: Context, input: Jdn): Intent {
val time = input.toJavaCalendar().timeInMillis
return Intent(Intent.ACTION_INSERT)
.setData(CalendarContract.Events.CONTENT_URI)
.putExtra(CalendarContract.Events.DESCRIPTION, "DESCRIPTION")
.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, time)
.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, time)
.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true)
}
}) {
}
【问题讨论】: