Entrada de datos en el calendario desde mi aplicación: entrada en cumpleaños en lugar de eventos o recordatorio

Para el primero, los datos de la condición if (rutinaObjeto.getSchedule () == 1) entran en eventos del calendario, pero para otra condición, van a los cumpleaños en lugar de los eventos. Los quiero a todos en eventos o recordatorios.

¿¿Alguna solución??

    String eventUriString = "content://com.android.calendar/events";
    ContentResolver cr = this.getContentResolver();
    ContentValues values = new ContentValues();

    if (routineObject.getSchedule() == 1) {

        dateTimeString = dateString + " " + SelectedTime;
        Date dateDateTime;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH : mm");

        try {
            dateDateTime = sdf.parse(dateTimeString);
        } catch (ParseException e) {
            e.printStackTrace();
            dateDateTime = new Date();
        }
        long millisecondsTimesNew = dateDateTime.getTime();

        values.put(CalendarContract.Reminders.CALENDAR_ID, routineObject.getId());
        values.put(CalendarContract.Reminders.TITLE, "Routineer");
        values.put(CalendarContract.Reminders.DTSTART, millisecondsTimesNew);
        values.put(CalendarContract.Reminders.DESCRIPTION, todoTextOneTIme);
        values.put(CalendarContract.Reminders.DTEND, millisecondsTimesNew);
        values.put(CalendarContract.Reminders.HAS_ALARM, true);
        values.put(CalendarContract.Reminders.EVENT_TIMEZONE, TimeZone.getDefault().getID());


    } else if (routineObject.getSchedule() == 2) {

        Date mDate;
        SimpleDateFormat sdfdate = new SimpleDateFormat("yyyy-MM-dd");
        try {
            mDate = sdfdate.parse(endDate);

        } catch (ParseException e) {
            e.printStackTrace();
            mDate = new Date();
        }
        long EndtimeInMilliseconds = mDate.getTime();

        dateTimeStringEveryday = startDate + " " + SelectedTime;
        Date dateDateTimeEveryday;
        SimpleDateFormat sdfEveryday = new SimpleDateFormat("yyyy-MM-dd HH : mm");

        try {
            dateDateTimeEveryday = sdfEveryday.parse(dateTimeStringEveryday);
        } catch (ParseException e) {
            e.printStackTrace();
            dateDateTimeEveryday = new Date();
        }
        long millisecondsStartTimesEveryday = dateDateTimeEveryday.getTime();

        values.put(CalendarContract.Reminders.CALENDAR_ID, routineObject.getId());
        values.put(CalendarContract.Reminders.TITLE, "Routine Everyday");
        values.put(CalendarContract.Reminders.DTSTART, millisecondsStartTimesEveryday);
        values.put(CalendarContract.Reminders.HAS_ALARM, true);
        values.put(CalendarContract.Reminders.RRULE, "FREQ=DAILY"); //UNTIL=1924885800000
        values.put(CalendarContract.Reminders.DTEND,EndtimeInMilliseconds);
        values.put(CalendarContract.Reminders.DESCRIPTION, todoTextEveryDay);
        values.put(CalendarContract.Reminders.EVENT_TIMEZONE, TimeZone.getDefault().getID());
    }



    Uri eventUriOneTime = this.getApplicationContext().getContentResolver().insert(Uri.parse(eventUriString), values);
    eventID = Long.parseLong(eventUriOneTime.getLastPathSegment());
    alertSelection();

Respuestas a la pregunta(1)

Su respuesta a la pregunta