Использование RDATE и RRULE в Android с использованием CalendarContract API

Я пытаюсь добавить повторяющееся событие, используя CalendarContract API, чтобы я мог установить пользовательское напоминание, которое синхронизируется с Календарем Google. Однако, когда я использую свойство RRULE, я могу добавить повторяющееся событие для ежедневного, еженедельного или ежемесячного промежутка времени. Но я также хочу, чтобы это повторяющееся событие происходило и за один день.

ИСПОЛЬЗОВАНИЕ: пользователь устанавливает ежедневное напоминание, начиная с сегодняшнего дня и до даты X. Тем не менее, он также хочет получать напоминания об одной и той же задаче 3 раза в день на ежедневной основе до даты окончания.

В настоящее время я использую RRULE:

ContentResolver cr = mKaerReminderActivity.getContentResolver();
        ContentValues contentValues = new ContentValues();
        contentValues.put(Events.DTSTART, startTime);
        contentValues.put(Events.DURATION, RFC2445_DURATION);

String rule = "FREQ=DAILY;UNTIL=20180525T000000Z";
contentValues.put(Events.RRULE, rule);


   contentValues.put(Events.TITLE, REMINDER_PREFIX + title);
        contentValues.put(Events.CALENDAR_ID, REMINDER_ID);
        contentValues.put(Events.EVENT_TIMEZONE, CalendarContract.Calendars.CALENDAR_TIME_ZONE);
         Uri uri = cr.insert(Events.CONTENT_URI, contentValues);

        long eventID = Long.parseLong(uri.getLastPathSegment());

Это будет повторять событие ежедневно. Но если я хотел бы повторить событие несколько раз в определенный день, я не смог бы достичь. При дальнейшем анализе я обнаружил, что мы можем добавить исключение в RRULE, используя RDATE (повторяющийся набор правил для события определяется объединением RRULE и RRDATE). Но когда я попытался, используя RDATE, он не отражается в календаре, хотя событие создается.

String dateRule = "VALUE=DATE-TIME:20180515T200000Z,20180516T210000Z";
 contentValues.put(Events.RDATE, dateRule);
msgstr "идентификатор события генерируется, но даже не отражается в календаре Google". Может кто-нибудь помочь мне создать повторяющийся набор, используя RRULE & RDATE, используя CalendarContract API в Android. Ссылка на RRULE & RDATE: https://tools.ietf.org/html/rfc5545

0 ответов

Другие вопросы по тегам