Gracias por A2A. Entiendo que te gustaría establecer un recordatorio. Bueno, hay dos formas de lograr esto.
- Puede usar el Administrador de alarmas y configurar una alarma para la fecha y hora especificadas. Esto activará un servicio / transmisión / actividad según su preferencia dentro del contexto de su aplicación. Tenga en cuenta que tendrá que gestionar las alarmas usted mismo, ya que se destruyen cuando el dispositivo se apaga.
- Puede usar Google Calendar para crear / insertar un evento con un recordatorio. Aquí tiene la ventaja de que el evento será manejado por la aplicación Calendario que se sincroniza entre dispositivos. Entonces recibirá este recordatorio en otros dispositivos (donde sea que haya iniciado sesión) también.
Mirando lo anterior, creo que la aplicación Calendario es tu mejor opción.
Por favor, consulte el siguiente código para referencia.
- ¿Tienes alguna idea para una aplicación de Android?
- ¿Cuál es la mejor aplicación del año 2016?
- ¿Cuál es el mejor nombre para un mensajero?
- Uber: ¿Cómo anima Uber los taxis en tiempo real en su aplicación?
- ¿Cuál es el clon chino de Snapchat?
ContentResolver cr = context.getContentResolver ();
ContentValues calEvent = new ContentValues ();
calEvent.put (CalendarContract.Events.CALENDAR_ID, 1); // XXX selección)
calEvent.put (CalendarContract.Events.TITLE, “Recordatorio para” + schedule.getLabel ());
calEvent.put (CalendarContract.Events.DTSTART, eventTime);
calEvent.put (CalendarContract.Events.DTEND, eventTime + (60 * 60 * 1000));
calEvent.put (CalendarContract.Events.HAS_ALARM, 1);
calEvent.put (CalendarContract.Events.EVENT_TIMEZONE, CalendarContract.Calendars.CALENDAR_TIME_ZONE);
// guardar un evento
uri final = cr.insert (CalendarContract.Events.CONTENT_URI, calEvent);
int dbId = Integer.parseInt (uri.getLastPathSegment ());
// Ahora crea un recordatorio y adjúntalo al recordatorio
Recordatorios de ContentValues = nuevos ContentValues ();
reminders.put (CalendarContract.Reminders.EVENT_ID, dbId);
reminders.put (CalendarContract.Reminders.METHOD, CalendarContract.Reminders.METHOD_DEFAULT);
reminders.put (CalendarContract.Reminders.MINUTES, 0);
recordatorio final de Uri = cr.insert (CalendarContract.Reminders.CONTENT_URI, recordatorios);
int agregado = Integer.parseInt (reminder.getLastPathSegment ());
// esto significa que se agrega un recordatorio
if (agregado> 0) {
Vista de intención = nueva intención (Intent.ACTION_VIEW);
view.setData (uri); // ingrese la uri del evento, no el recordatorio
if (Build.VERSION.SDK_INT> Build.VERSION_CODES.KITKAT_WATCH) {
view.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_SINGLE_TOP | Intención.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_NO_HISTORY | Intención.FLAG_ACTIVITY_NEW_DOCUMENT);
}
más {
view.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK |
Intención.FLAG_ACTIVITY_SINGLE_TOP | Intención.FLAG_ACTIVITY_CLEAR_TOP |
Intención.FLAG_ACTIVITY_NO_HISTORY |
Intención.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
}
// ver el evento en el calendario
startActivity (ver);
}
Espero que esto ayude.
Feliz codificación y saludos!