Tarea regular de Android (equivalente a cronjob)

La última vez que esta pregunta fue hecha (por un usuario diferente), la respuesta fue:

Si se trata de una actividad en ejecución, puede utilizar Timer / TimerTask y un Handler, o puede usar postDelayed () y un AsyncTask.

Aquí: Tarea repetitiva de Android

Todavía estoy aprendiendo a programar android. He pasado por las habilidades que conozco incluyendo hilos y tenía muchos problemas con mi código. ¿Puede alguien dar un ejemplo de cómo usar: time / timertask y handler O postDelayed () y AsyncTask.

Gracias por adelantado 🙂

Tengo la sensación de que esto puede ayudar: http://www.tutorialforandroid.com/2009/01/using-handler-in-android.html

Para las tareas de Cron que tiene que utilizar AlarmManager, se trata de un servicio del sistema, para usarlo en el código que necesita llamar:

AlarmManager myAlarmManager = Context.getSystemService(Context.ALARM_SERVICE). 

Documentos completos sobre AlarmManager aquí.

Si quieres construir un corredor de cronjob entonces lo que quieres es un servicio :

Un servicio es un componente de aplicación que puede realizar operaciones largas en segundo plano y no proporciona una interfaz de usuario. Otro componente de la aplicación puede iniciar un servicio y continuará ejecutándose en segundo plano incluso si el usuario cambia a otra aplicación. Además, un componente puede enlazar a un servicio para interactuar con él e incluso realizar comunicación entre procesos (IPC). Por ejemplo, un servicio puede manejar transacciones de red, reproducir música, realizar E / S de archivos o interactuar con un proveedor de contenido, todo desde el fondo.

El enfoque más adecuado es a través de servicios. Aprendí a escribir servicios mirando el código fuente de la aplicación de correo electrónico de stock que se incluye con Android.

La idea general es que anula la clase de servicio y configura alarmas para activar su servicio. A diferencia de los daemons y los servicios de Windows, los servicios de Android no siempre se ejecutan – se inician (normalmente cuando se activan mediante una alarma), realizan trabajo y, a continuación, se cierran. En algunos casos, es posible que necesite adquirir un bloqueo parcial de la sesión para mantener el servicio en funcionamiento hasta que finalice la tarea; de lo contrario, Android podría matar su servicio prematuramente.

La referencia de google es en realidad bastante bueno.

http://developer.android.com/reference/android/os/AsyncTask.html

  • Color de fondo de elemento de lista seleccionado inesperadamente reutilizado después de desplazamiento de lista en tabletas
  • Java dando respuesta incorrecta en un cálculo
  • Java.lang.ClassNotFoundException para mi aplicación
  • ¿Cómo puedo clasificar mi Arraylist alfabético? (Java)
  • Cómo iniciar una nueva actividad en android
  • Java.lang.NullPointerException: Intenta invocar el método virtual 'android.view.View android.app.Activity.findViewById (int)' en una referencia de objeto nulo
  • Mejor manera de acceder a la base de datos en la aplicación multi-threaded Android?
  • Error en la sincronización del proyecto de Android Gradle
  • Android - estilo de botón predeterminado
  • Portar el código de gráficos AWT a Android
  • El código de apertura de Android no funciona
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.