Crear evento de calendario desde mi aplicación sin recordatorios predeterminados
Estoy desarrollando una aplicación que crea, actualiza y elimina eventos en el calendario nativo de Google. Estoy creando un evento siguiendo el código:
ContentValues cvEvent = new ContentValues(); cvEvent.put(Events.DTSTART, startMillis); cvEvent.put(Events.DTEND, endMillis); cvEvent.put(Events.TITLE, strJobName); cvEvent.put(Events.CALENDAR_ID, mlCalendarID); cvEvent.put(Events.EVENT_TIMEZONE, "America/Los_Angeles"); Uri uriEvent = crEvent.insert(Events.CONTENT_URI, cvEvent);
Pero el problema es que este evento crea un recordatorio por defecto según lo establecido por el usuario dentro de su calendario (Google).
- API de Google Calendar: Actualización de recordatorios a un evento
- Error de autorización de Google Calendar API
- Calendario de Android Las fechas de los eventos de todo el día están desactivadas en un día para GMT + x Áreas
- Api de Google Calendar para Android
- Android: ¿Cómo interactuar con Google Calendar?
También estoy permitiendo a los usuarios agregar recordatorios dentro de mi aplicación. Por lo tanto, cuando agrega un recordatorio, inserto recordatorios en el calendario predeterminado de Google. Eso no tiene problemas. Pero cuando el usuario no agrega ningún recordatorio en mi aplicación, el calendario predeterminado de google crea un recordatorio predeterminado. ¿Puede alguien decirme cómo resolver este problema?
PS: No estoy usando adaptadores de sincronización. Estoy creando y borrando eventos y recordatorios a través de mi propia lógica.
Intenté usar
values.put(Events.HAS_ALARM, 0);
Pero, no sirve de nada.
- Evento de sincronización agregado mediante programación con google calendar en android
- ¿Cómo leer los eventos de Google Calendar en android?
- No se pueden insertar varios eventos en Google Calendar.
- No se puede eliminar un recordatorio de Calendar en Android
- Evento de sincronización con google calendar desde android
- Cómo eliminar o editar el evento de G-calendario de mi aplicación Android?
- No se puede agregar un evento al calendario en android
- Google Calendar API OAuth2 Problemas en Android Honeycomb
¿Qué hay de eliminar los recordatorios mediante programación utilizando el ID de evento que obtuvo después de insertar el evento?
ContentValues cvEvent = new ContentValues(); cvEvent.put(Events.DTSTART, startMillis); cvEvent.put(Events.DTEND, endMillis); cvEvent.put(Events.TITLE, strJobName); cvEvent.put(Events.CALENDAR_ID, mlCalendarID); cvEvent.put(Events.EVENT_TIMEZONE, "America/Los_Angeles"); Uri uriEvent = crEvent.insert(Events.CONTENT_URI, cvEvent); //added code long eventID = Long.parseLong(uri.getLastPathSegment()); ContentResolver cr = getContentResolver(); cr.delete(Reminders.CONTENT_URI, Reminders.EVENT_ID+"=?", new String[]{eventID+""});
No estoy seguro de cómo hacer esto en Android, pero si nos fijamos en la documentación de Google hay un campo llamado recordatorios.useDefault en el POST utilizado para insertar un evento en un calendario.
Nombre de la propiedad: reminders.useDefault
Valor: boolean
Descripción: si los recordatorios predeterminados del calendario se aplican al evento.
Notas: escritura
https://developers.google.com/google-apps/calendar/v3/reference/events/insert
- ¿Para qué se usan las banderas?
- ¿El código de la API de servicios de Google Play está fuera de una actividad?