Hola a todos.
Deseo crear un servicio que cada 'n' segundos se conecte con un servidor y solicite información para saber si hay pedidos.
Ya leí los tutoriales de estos links:
Intent Filters - Intercepting SMS messages in the background
https://www.b4x.com/android/forum/t...cepting-sms-messages-in-the-background.20103/
Automatic Foreground Mode:
https://www.b4x.com/android/forum/threads/automatic-foreground-mode.90546/
Pero mi inglés es deficiente y aunque entiendo la mayoria del texto, supongo que algo no me ha quedado claro.
Ya sé que al iniciarse la aplicación, Android automáticamente inicia los servicios en modo AutomaticForegroundMode
También entendí que no es necesario emplear la orden StartServiceAt por que el servicio nunca finaliza, (Solo en casos raros), porque Android vuelve a correr el servicio de forma automática, en caso que el servicio se haya cerrado, por que tampoco es necesario:
Lo unico que he entendido hasta ahora es que hay que agregar la linea Service.StopAutomaticForeground a Service_Start para poder emplear StartServiceAt.
Aunque de esa forma el programa funciona "Bien". ¿No es absurdo hacerlo de esta forma si el servicio se esta ejecutando siempre?
Escribí dentro de un servicio las siguientes lineas
Pero el mensaje "RUNNING...", solo aparece una única vez.
A pesar de seguir las instrucciones y que el programa funciona, el Log sigue mostrando el mensaje de error
Lo que mas me molesta es el mensaje The Starter service should never be strated from a receiver.
¿Entonces, como hago para ejecutar un servicio cada 'n' segundos, de forma correcta?
Saludos
Deseo crear un servicio que cada 'n' segundos se conecte con un servidor y solicite información para saber si hay pedidos.
Ya leí los tutoriales de estos links:
Intent Filters - Intercepting SMS messages in the background
https://www.b4x.com/android/forum/t...cepting-sms-messages-in-the-background.20103/
Automatic Foreground Mode:
https://www.b4x.com/android/forum/threads/automatic-foreground-mode.90546/
Pero mi inglés es deficiente y aunque entiendo la mayoria del texto, supongo que algo no me ha quedado claro.
Ya sé que al iniciarse la aplicación, Android automáticamente inicia los servicios en modo AutomaticForegroundMode
También entendí que no es necesario emplear la orden StartServiceAt por que el servicio nunca finaliza, (Solo en casos raros), porque Android vuelve a correr el servicio de forma automática, en caso que el servicio se haya cerrado, por que tampoco es necesario:
B4X:
#StartCommandReturnValue: android.app.Service.START_STICKY
Lo unico que he entendido hasta ahora es que hay que agregar la linea Service.StopAutomaticForeground a Service_Start para poder emplear StartServiceAt.
Aunque de esa forma el programa funciona "Bien". ¿No es absurdo hacerlo de esta forma si el servicio se esta ejecutando siempre?
Escribí dentro de un servicio las siguientes lineas
B4X:
Private Sub Service_Start (StartingIntent As Intent)
ToastMessageShow ("RUNNING...", False)
Log(">>> " & DateTime.GetSecond(DateTime.Now))
End Sub
Pero el mensaje "RUNNING...", solo aparece una única vez.
A pesar de seguir las instrucciones y que el programa funciona, el Log sigue mostrando el mensaje de error
Lo que mas me molesta es el mensaje The Starter service should never be strated from a receiver.
¿Entonces, como hago para ejecutar un servicio cada 'n' segundos, de forma correcta?
Saludos
Last edited: