5

Tengo un servicio que crea, reproduce y maneja un reproductor de medios (solo audio), pero tengo una barra de búsqueda en la actividad principal que quiero, naturalmente, mostrar el progreso del archivo de audio y permitir el usuario para buscar varias posiciones.Android media player seekbar

Lo que me está costando descubrir es: ¿cuál sería la mejor manera o la mejor forma de conectar la barra de búsqueda en la interfaz de usuario al reproductor de medios en el servicio?

Respuesta

4

Aquí es cómo iba a hacer esto:

  1. Enlazar a servicio que reproduce audio. La interfaz que devuelve el servidor en onBind debe tener las funciones getCurrentPos() y getDuration().

  2. En onCreate de vinculación de la actividad al servicio

  3. En postDelayed función de su actividad onResume uso Handler 's para iniciar actualizaciones.
  4. En su actividad detener todas las devoluciones de llamadas publicadas a través de la función postDelayed.
  5. En ejecutable que se pasa a postDelayed ejecute boundService.getCurrentPos() y boundService.getDuration() y actualice la barra de búsqueda adecuadamente.

En resumen, debe utilizar el enlace de servicios y el controlador para las actualizaciones periódicas.

  1. Para servicios vinculados, lea "Bound services" documentación (el servicio limitado local debería ser suficiente en su escenario).
  2. Como usuario Handler actualizaciones periódicas leer esta pregunta: Repeat a task with a time delay?
0

También puede intentar Otto from Square

Sólo tiene que crear una clase SeekBarSyncEvent.java, poner los parámetros que necesita en ese país:

  • int progress
  • int duration
  • FROMUSER booleano
  • lo que sea necesario

A continuación, puede inicializar la barra de búsqueda de la actividad mediante la publicación de un evento desde el autobús con su clase SeekBarSyncEvent en el método onPrepared() de su servicio.

Finalmente cree el método @Subscribe en su actividad para que llame a su método seekBarUpdate().

Esto debería funcionar bien, agradable y fácil de mantener.

Cuestiones relacionadas