Spanish Problema con StartServiceAt [Solucionado]

mittemot

Member
Licensed User
Hola.

Todo se resume a que StartServiceAt me ignora completamente.
StartService funciona perfectamente pero no StartServiceAt.

En el Main simplemente un botón que inicia el servicio llamado 'servicio'

B4X:
Sub Globals
    Private Button1 As Button
End Sub

Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("1")
End Sub

Sub Activity_Resume
End Sub

Sub Activity_Pause (UserClosed As Boolean)
End Sub

Sub Button1_Click
    StartService(servicio)
End Sub
Y en 'servicio' esto, que se supone que reinicia el servicio cada 2 segundos mostrando un mensaje Toast

B4X:
Sub Process_Globals
End Sub

Sub Service_Create
End Sub

Sub Service_Start (StartingIntent As Intent)
    ToastMessageShow("El servicio se ha iniciado.",True)
    StartServiceAt("",DateTime.Now + 2 * DateTime.TicksPerSecond,True)
End Sub

Sub Service_Destroy
End Sub
Pues bien, el mensaje sólo aparece una vez, El StartServiceAt es como si no existiera. Tampoco funciona en Main.

gracias
 
Last edited:

mittemot

Member
Licensed User
Solucionado, es un fallo en el emulador GenyMotion, en un Teléfono real, sí que funciona.
 

bgsoft

Well-Known Member
Licensed User
Hola

Seria interesante que añadieras [SOLUCIONADO] a la cabecera del post, para que asi el resto del foro lo sepa.

Por otro lado, te recomiendo que emplees el codigo que he puesto mas abajo (es solo un consejo) para que al ver el código cuando haya pasado un tiempo te sea mas facil de entender, si no tendras que estar recordando que ese 1000 de tu ejemplo son milisengundos, y esperas una nueva llamada a los dos segundos (2*1000)

B4X:
StartServiceAt("", DateTime.Now + Minutos * DateTime.TicksPerMinute, True) ‘ para minutos

StartServiceAt("", DateTime.Now + Segundos * DateTime. TicksPerSecond, True) ‘ para segundos
Saludos
 
Top