Aggiunta di events per tutti i giorni tra data di inizio e data di fine nel calendario di Google Android

Aggiunta di events per tutti i giorni tra data di inizio e data di fine nel calendario di Google Android. voglio rimanere each 3 mesi fino alla data di fine. Questa è la mia function

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); } 

questa function aggiunge events each giorno. Come rimuoverlo. Ho bisogno solo di resto. C'è qualcosa di sbagliato nel mio codice? screenshot1 screenshot2

  • Nascondi MenuItem in alcuni frammenti
  • Applicare gli annunci nativi in ​​android utilizzando Admob? È ansible?
  • Passaggio di un'image da un'attività a un'altra attività
  • Android ListView aggiunge gli elementi in cima senza la visualizzazione di elenco scorrimento
  • Copertura di codice di Android Gradle
  • android: copia ricorsiva con push adb
  • Come risolvere android.os.DeadObjectException android X
  • POSTING JSON / XML usando android-async-http (loopj)
  • HttpURLConnection java.io.FileNotFoundException
  • Cercando di catturare il volume onKeyLongPress () non funziona
  • come scaricare i file APK dal mercato android al pc?
  • ListView setOnItemClickListener non funziona aggiungendo il button
  • One Solution collect form web for “Aggiunta di events per tutti i giorni tra data di inizio e data di fine nel calendario di Google Android”

    Se leggo tutto correttamente, si desidera un elemento di calendario each mese dell'tree per un giorno integer. Hai provato ad aggiungere questa linea?

     contentValues.put(CalendarContract.EXTRA_EVENT_ALL_DAY, true); 

    E cambiato la data di fine di un elemento di calendario è impostato correttamente alla fine dell'anno, mentre questa dovrebbe essere la data di fine dell'elemento corrente. DTEND è la fine dell'attuale elemento DURATION è la fine del paternio di reoccuring.

    Se ho capito il problema sbagliato, per favore, date una descrizione dettagliata. Per tutte le opzioni del CalenderContracts, controlla questo collegamento .

    EDIT:

    Desideri un appuntamento di calendario per each giorno ma ricordi all'utente each tre mesi. Con il tuo codice questo non è attualmente ansible poiché aggiungi un promemory per each elemento del calendario con quell'ID (quindi per each giorno). Solo una soluzione semplice che posso pensare è creare un appuntamento separato con un altro id che si ripete each tre mesi con un promemory e un altro id. Attualmente non è ansible impostare un allarme per alcuni events con lo stesso id e alcuni no.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.