Установка частотного атрибута RRULE для однократного запуска события
Я имею
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("beginTime", dateStart.getTime());
intent.putExtra("allDay", false);
intent.putExtra("rrule", "FREQ=DAILY");
intent.putExtra("endTime", dateEnd.getTime());
startActivity(intent);
Чтобы скомпилировать событие, и я хочу запустить событие один раз.
Линия, которая устанавливает частоту
intent.putExtra("rrule", "FREQ=DAILY");
также, если я удаляю эту строку, по умолчанию календарь Android установлен на DAILY, если я не изменяю его вручную.
Я искал список всех поддерживаемых атрибутов, нашел MONTLY,YEARLY и т. Д., Но не могу найти правильный поддерживаемый синтаксис для "одного раза"
Не могли бы вы помочь мне?
3 ответа
Правильный способ установить одноразовое событие, согласно спецификации, указанной в документации, - не указывать RRULE. Вы уверены, что событие повторяется, вместо того, чтобы отображать частоту как ежедневную и все еще только один раз? Если это так, следующее должно работать, хотя это немного подделка:
intent.putExtra("rrule", "FREQ=DAILY;COUNT=1");
Для одного временного события вы также можете просто ничего не устанавливать.
/ бладжер,
странная ошибка Вы должны просто удалить эту строку кода
intent.putExtra("rrule", "FREQ=DAILY");
и он должен прекрасно работать как "Single Event". Если вы используете опцию rrule, вы говорите приложению "повторить" событие.
Так что... просто удалите эту строку кода, и она должна работать.