Hinzufügen von Ereignissen für alle Tage zwischen Startdatum und Enddatum in Google Kalender Android. Ich will Rest alle 3 Monate bis Enddatum. Dies ist meine FunktionHinzufügen von Ereignissen für alle Tage zwischen Startdatum und Enddatum in Google Kalender Android
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);
}
diese Funktion Ereignisse fügt jeden Tag. Wie man das entfernt. Ich brauche nur Rest. Ist irgendetwas in meinem Code falsch?
Überprüfen Sie diese [SO Frage] (http://stackoverflow.com/questions/6298235/get-google-calendar-events-start-and-end-times-with-google-java-api-client-in- an? rq = 1) wenn es dir helfen kann :) – KENdi
ist es notwendig, api ?? keine andere Methode ?? – Elizabeth
@Elizabeth gibt es eine Möglichkeit, dass ich Ihnen immer noch helfen kann, ich habe bisher keine Antwort erhalten. – jobbert