Adición de eventos para todos los días entre la fecha de inicio y la fecha de finalización en google calendar Android

Agregar eventos para todos los días entre la fecha de inicio y la fecha de finalización en google calendar Android. Quiero resto cada 3 meses hasta la fecha de finalización. Esta es mi función

public void addEvent1(Context ctx, String title){ SimpleDateFormat df2 = new SimpleDateFormat("dd/MM/yyyy"); SimpleDateFormat df3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", java.util.Locale.getDefault()); Date Startdate = null; Date Enddate =null; String dtStart = date.getText().toString(); try { Startdate = df2.parse(dtStart); Enddate = df2.parse(stringMaturityDate); Log.v("SDate: ",""+ df3.format(Startdate)); Log.v("EDate: ",""+ df3.format(Enddate)); } catch(ParseException e){ e.printStackTrace(); } Calendar cali = Calendar.getInstance(); cali.setTime(Startdate); Calendar cali2 = Calendar.getInstance(); cali2.setTime(Enddate); SimpleDateFormat yyyymmdd = new SimpleDateFormat("yyyyMMdd"); Calendar dt = Calendar.getInstance(); dt.setTime(Enddate); String dtUntill = yyyymmdd.format(dt.getTime()); ContentResolver contentResolver = ctx.getContentResolver(); ContentValues calEvent = new ContentValues(); calEvent.put(CalendarContract.Events.CALENDAR_ID, 1); // XXX pick) calEvent.put(CalendarContract.Events.TITLE, title); calEvent.put(CalendarContract.Events.RRULE, "FREQ=MONTHLY;INTERVAL=3;UNTIL=" + dtUntill); calEvent.put(CalendarContract.Events.DTSTART, cali.getTimeInMillis()); calEvent.put(CalendarContract.Events.DTEND, cali2.getTimeInMillis()); calEvent.put(CalendarContract.Events.EVENT_TIMEZONE, "" + java.util.Locale.getDefault()); Uri uri = contentResolver.insert(CalendarContract.Events.CONTENT_URI, calEvent); int id = Integer.parseInt(uri.getLastPathSegment()); Toast.makeText(ctx, "Created Calendar Event " + id, Toast.LENGTH_SHORT).show(); ContentValues reminders = new ContentValues(); reminders.put(CalendarContract.Reminders.EVENT_ID, id); reminders.put(CalendarContract.Reminders.METHOD, CalendarContract.Reminders.METHOD_ALERT); reminders.put(CalendarContract.Reminders.MINUTES, 10); Uri uri1 = contentResolver.insert(CalendarContract.Reminders.CONTENT_URI, reminders); } 

Esta función añade eventos todos los días. Cómo quitar eso. Necesito sólo remainder.Is hay algo mal en mi código? Captura de pantalla1 Captura de pantalla2

Si leo todo correctamente, desea un elemento de calendario cada uno de los meses del árbol durante un día completo. ¿Ha intentado agregar esta línea?

 contentValues.put(CalendarContract.EXTRA_EVENT_ALL_DAY, true); 

Y la fecha de finalización de un elemento de calendario se cambia actualmente al final del año, mientras que ésta debería ser la fecha de finalización del elemento actual. DTEND es el final del elemento actual DURATION es el final del pater reoccuring.

Si he entendido el problema mal por favor dame una descripción detallada. Para todas las opciones de CalenderContracts, marque este enlace .

EDITAR:

Desea una cita del calendario para cada día, pero recuerde al usuario cada tres meses. Con su código, esto no es posible actualmente ya que está agregando un recordatorio para cada elemento de calendario con ese ID (por lo que para cada día). Sólo solución fácil lo que puedo pensar es crear una cita separada con otro id que repetir cada tres meses con un recordatorio y un id diferente. Actualmente no es posible establecer una alarma para algunos eventos con el mismo id y otros no.

  • Cómo obtener eventos de google cuenta calendario en android?
  • Buscando el código fuente de los nuevos Widgets del selector de tiempo y fecha de Google Calendar
  • API de Google Calendar: Actualización de recordatorios a un evento
  • API de Google: ¿Diferencia entre la clave del navegador y la clave de Android?
  • ¿Cómo elimino mi propio calendario personalizado corrompido mediante programación?
  • ¿Cómo agregar un evento en Google Calendar desde la actividad?
  • Añadir evento de calendario en la aplicación para Android
  • Cómo desarrollar una aplicación para Android que utilice Google Calendar API
  • Cómo eliminar o editar el evento de G-calendario de mi aplicación Android?
  • Obtenga los horarios de inicio y fin de Google Calendar Events con google-java-api-client en Android
  • API de calendario de Android insertar evento recurrente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.