我需要检查当前是否有一个“忙”日历事件。
String[] projection = new String[] { BaseColumns._ID};
String selection = CalendarContract.Events.DTSTART + " <= ? AND "
+ CalendarContract.Events.DTEND + ">= ? AND "
+ CalendarContract.Events.AVAILABILITY + "=="
+ CalendarContract.Events.AVAILABILITY_BUSY;
Cursor cur = ctx.getContentResolver().query(CalendarContract.Events.CONTENT_URI,
projection,
selection,
new String[] {String.valueOf(System.currentTimeMillis()),
String.valueOf(System.currentTimeMillis())},
null);
此代码可以正常工作,但不适用于重复发生的事件。
我该如何解决?
最佳答案
我认为您所需要做的就是切换从中读取的表see here。CalendarContract.Instances
应提供所有事件,包括重复事件
该表保存每个事件发生的开始时间和结束时间。该表中的每一行代表一个事件发生。对于一次性事件,实例与事件之间存在1:1的映射。对于重复发生的事件,将自动生成与该事件的多次出现相对应的多行。
关于android - 检查日历 Activity 是否正在进行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48356470/