Pregunta tonta sobre el ciclo de vida de Android Activy
-
27-10-2019 - |
Pregunta
Tengo actividades+clases de servicio.
Cuando se mostrará la actividad de ejecución del programa y se iniciará el servicio en onCreate
Método de actividad.
Cuando hice clic en el botón Inicio de la máquina virtual, aparecerá la pantalla de inicio, pero la actividad se habrá ido
- En este punto, me pregunto ese programa en el que la situación se basó/detuvo- ???
- ¿Qué pasó con el servicio? (¿Todavía se está ejecutando?)
- ¿Cómo puedo llevar la actividad al frente usando el servicio?
Gracias...
Solución
Bueno, en su caso para la actividad, si presiona el botón de inicio, se detiene. Y al iniciarlo nuevamente al presionar el botón de inicio, simplemente lo reanuda.
Para el servicio: depende de cómo se inicie su servicio.
Si inicia el servicio con StartService (intención), su servicio se ejecuta hasta:
a) Usted lo detiene explícitamente llamando a StopService.
b) Android lo mata
c) llamas a sí mismo desde el interior del servicio
Si inicia el servicio con bindservice () sin llamar a startservice (), entonces el servicio:
a) Ejecutar hasta que la actividad se destruya (no se detiene, por lo que esto significa que seguirá funcionando si presiona el botón de inicio) y esto también significa que debe llamar a Unbind ().
b) Android lo mata
c) hasta que llames a sí mismo desde el interior del servicio
Para llevar la actividad al primer plano, debe llamar a una intención y establecer la bandera, creo que se lanzó desde la historia o algo así ... Tendrá que consultar los documentos.
intent.addflag (intent.flag_activity_reorder_to_front); < - creo o este -> flag_activity_launched_from_history
Otros consejos
Ver debajo del flujo de actividad, espero que ayude
El estado de tu Activity
(y Service
) podría variar dependiendo de qué más está sucediendo. Si el sistema de Android necesitaba recursos, puede haber destruido su Activity
(y posiblemente también tu Service
) para obtenerlos. Deberías leer:
En el Activity
El diagrama (también en la respuesta de Mark Bakker) presta especial atención al cuadro que contiene el texto 'otras aplicaciones necesitan memoria'.