Saltar al contenido

Android: ejecución de una tarea en segundo plano cada 15 minutos, incluso cuando la aplicación no se está ejecutando

Jaime, miembro de este gran equipo, nos hizo el favor de escribir esta crónica porque domina perfectamente dicho tema.

Solución:

Ha determinado la cantidad de tiempo (intervalo) para ejecutar un fragmento de código, es mejor usar AlarmManager porque es más eficiente energéticamente. Si su aplicación necesita escuchar algún tipo de evento, entonces Service es lo que necesita.

public static void registerAlarm(Context context) 
    Intent i = new Intent(context, YOURBROADCASTRECIEVER.class);

    PendingIntent sender = PendingIntent.getBroadcast(context,REQUEST_CODE, i, 0);

    // We want the alarm to go off 3 seconds from now.
    long firstTime = SystemClock.elapsedRealtime();
    firstTime += 3 * 1000;//start 3 seconds after first register.

    // Schedule the alarm!
    AlarmManager am = (AlarmManager) context
            .getSystemService(ALARM_SERVICE);
    am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime,
            600000, sender);//10min interval


¿Administrador de alarmas (servicio del sistema) frente a servicio remoto con implementación de alarma interna (proceso separado)?

Alarm Manager es tu elección, porque ya tiene lo que necesitas, solo tienes que configurar los intervalos de alarma

Si crees que te ha sido provechoso nuestro artículo, sería de mucha ayuda si lo compartieras con otros seniors y nos ayudes a dar difusión a nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *