ICS で定期的なイベントを読み取ろうとしました。定期的なイベントの startTime は問題ありませんが、endTime は 0 (ミリ秒) です。しかし、定期的なイベントだけでは、「null」ではない期間があります。テストイベントで「P9000S」の期間を読みました。これは RFC2445 形式であるため、単一のイベントの期間ではなく、最初のイベントから最後のイベントまでの期間です。RRULE は次のようになります: FREQ=MONTHLY;COUNT=3;BYMONTHDAY=3。シングル イベントの終了時刻を取得するにはどうすればよいですか? よろしくお願いします!これは私の予測です:
final String[] projection = new String[]
{ CalendarContract.Events.TITLE, CalendarContract.Events.DTSTART, CalendarContract.Events.DTEND, CalendarContract.Events.RRULE, CalendarContract.Events.ALL_DAY, CalendarContract.Events.DURATION};
編集:
final String[] projection = new String[]
{ CalendarContract.Events.TITLE, CalendarContract.Events.DTSTART, CalendarContract.Events.DTEND, CalendarContract.Events.DURATION, CalendarContract.Events.ALL_DAY, CalendarContract.Events.RRULE};
// Construct the query with the desired date range.
Uri.Builder builder = Instances.CONTENT_URI.buildUpon();
ContentUris.appendId(builder, now - DateUtils.DAY_IN_MILLIS);
ContentUris.appendId(builder, now + DateUtils.DAY_IN_MILLIS);
eventCursor = getContentResolver().query(
builder.build(), projection, Instances.CALENDAR_ID + " = ?",
new String[]{""+calendarID}, CalendarContract.Events.DTEND +" ASC");