Tengo un servicio y su comportamiento debe cambiar cuando cambia la Actividad superior. Digamos que la actividad A está activa y luego el servicio inicia algún tipo de procesamiento. Este proceso debe detenerse cuando la Actividad A ya no esté visible: el usuario presionó "Atrás", "Casa" o hizo cualquier otra cosa que hace que la Actividad A sea invisible. Esta Actividad A no debe conocer el servicio, es decir, no debe tener que informar explícitamente al Servicio que se va a ausentar.¿Cómo obtener cualquier identificador de la actividad más alta?
En pocas palabras, ¿hay una manera de:
- obtener cualquier tipo de identificación (referencia de objeto, nombre de la clase, identificación, etc.) de la actividad más elevada,
- recibir una notificación cuando más alta actividad cambios?
P.S. Esto puede sonar como comportamiento de malware, ¡pero no lo es! ¡Es un caso de uso legítimo!
Editar: Las actividades no están en mi aplicación. Pueden ser cualquier cosa: navegador, aplicación de mapas, configuración, etc.
No, las actividades a las que me refiero pueden ser casi cualquier cosa, no necesariamente en mi propia aplicación. onResume() y onPause() serían útiles si fuera mi propia actividad. –
Encontré tu respuesta (parcialmente) y edité mi publicación. –
¡Genial! ¡Veré cómo/si funciona! –