entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

0voto

controlar activity con un servicio (Android)

Buenas. Os cuento mi problema. He creado una app de música. Cuando creía que ya la tenía terminada me he puesto a hacer pruebas, y como muchas veces pasa pues te das cuenta que tiene un problema con el que no contabas.
En mi app escoges un tipo de mùsica, que contiene un listado de pistas, y llegas a la activity que contendría el reproductor, donde tienes los botones play, next, la carátula, el título, etc..... Pero al mismo tiempo utilizo un service para reproducirla en segundo plano. El problema esta en que cuando pasa de una canción a otra, la activity se tiene que cambiar, o sea, cambiar el titulo, la carátula, etc, lo cual hace sin problemas cuando estoy dentro de la activity, pero si salgo de la app, la música sigue perfectamente, y cambia a la siguiente, pero al entrar en la app, el activity no se ha cambiado, siguen con el título y todo lo demás de la anterior canción.
La cosa estaría en actualizar el activity desde el service, que es lo que estoy intentando de la siguiente forma.
En el service, cuando llega al onCompletion envío un entero, que recibo en el activity con BroadcastReceiver. Me he asegurado de que llegue bien el entero. Con este BroadcastReceiver también voy recibiendo en que segundo esta la canción y lo voy mostrando, la cual cosa hace bien, por que cuando abro la app de nuevo, el tiempo en que esta la canción es el correcto. Y si llega al onCompletion pues hago lo que haría con el botón siguiente. Pero no se por que no me lo hace.......

Gracias por vuestro tiempo.

1voto

Peter comentado

Sin compartir tu código va a ser complicado que alguien te diga en donde tienes el error del mismo.

Saludos.

0voto

nachito777sk comentado

Hola, haciendo pruebas me he dado cuenta, que mientras no esta abierta la activity, esta no recibe el entero del service. El tiempo transcurrido si que lo pasa bien debido a que lo voy pasando continuamente, y cuando abro la activity se actualiza al momento, mientras que todo lo demás(titulo,carátula,etc) lo actualizo en el onCompletion, y lo envía en ese momento, lo cual, si no tengo abierta la activity, pues no lo recibe esta y no hace nada.
Ahora se donde esta el error, pero claro, me aparece otro el cual me resulta difícil de explicar. Ha ver si lo consigo:
Yo podría enviar un entero sumando 1 con el tiempo transcurrido, el cual pasaría cada vez que transcurre un segundo. Este entero haría que pasase uno en el array y actualizase todo. Pero claro, este entero sumando 1 lo enviaría cada vez que la persona una vez fuera de la app y reproduciendose en segundo plano, entrase de nuevo en la app. El problema es que si sale y entra dos veces o mas en la misma canción actualizaría de más.
Estoy dando vueltas a ver si encuentro una solución. Si alguien se ha encontrado con este problema alguna vez y lo ha solucionado que me diga como, que me estoy volviendo loco........

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta