Use CountDown Timer o rodar mi propio basado en Handler en Android

Este post: http://android-developers.blogspot.co.uk/2007/11/stitch-in-time.html

Describe cómo implementar un temporizador utilizando un Handler. Podría lograr lo mismo usando un temporizador CountDown: http://developer.android.com/reference/android/os/CountDownTimer.html

Esto se ejecutará en un servicio de primer plano que está reproduciendo música con el fin de detener la música después de un período de tiempo especificado (piense sillas musicales). Los tiempos necesitan ser confiables cuando la pantalla está bloqueada, creo que la ejecución en un servicio de primer plano debe garantizar esto, es este el caso?

Sé por este post: ¿Por qué CountDown Timer en Android utiliza un Handler?

Que CountDown temporizador se implementa con un controlador de modo que mi pensamiento es que probablemente no importa lo que uso, pero antes de empezar a codificar pensé que iba a buscar la sabiduría de la multitud!

Gracias, Andrew

Terminé yendo para un Handler y está trabajando muy bien:

//required import import android.os.Handler; //class wide variable... are these considered bad? private Handler timeHandler = new Handler(); //wherever in your code you want to begin the timer or reset it timeHandler.removeCallbacks(updateTime); timeHandler.postDelayed(updateTime, 100); //this is the callback which will be called every 100ms or whatever value you gave in postDelayed private Runnable updateTime = new Runnable() { public void run() { timeHandler.postDelayed(this, 100); currentTimeMillis = currentTimeMillis + 100; //do whatever you need to do every 100ms here... or whenever currentTimeMillis reaches the value you're waiting for. } 

He añadido un wakeLock para mantener la CPU despierta si la pantalla está bloqueada y también utiliza un servicio de primer plano. Ha sido exacto en las pruebas que he hecho hasta ahora.

  • Android: cómo utilizar un temporizador
  • Hacer un temporizador de intervalo en Java android
  • PostAtTime no desencadena
  • Android: desea que la aplicación realice tareas cada segundo
  • Manejador o temporizador android
  • CountDownTimer.cancel () no funciona en Android
  • Visibilidad de un botón en el temporizador
  • Fiabilidad del método postDelay de Android
  • Mostrar temporizador en texto contiene días, horas, minutos y segundos en android
  • Eventos retardados en Android
  • Android: Alternativa de temporizador / retraso
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.