¿Hay alguna forma de saber si una actividad se reanudará (es decir, se llama a OnResume) desde la pantalla de inicio/iniciador?¿Hay alguna forma de distinguir entre una actividad de Android onResume desde la pantalla de inicio?
Por ejemplo, si tengo una aplicación con dos actividades, A y B.
Escenario 1: Algunos acción del usuario sobre la Actividad Una invocará la actividad B, con lo que en el primer plano - Un movimiento Actividad en el fondo. A medida que la actividad A se mueve a un segundo plano, pasa por OnPause() y onStop(). El usuario (ahora en la Actividad B) finaliza la Actividad o pulsa el botón "Atrás", llevando la Actividad A de regreso al primer plano, causando una secuencia onRestart(), onStart(), onResume().
Escenario 2: Si el usuario pulsa el botón "Inicio", mientras que la actividad A se encuentra en el primer plano y luego re-invoca la aplicación desde el lanzador, que pasa por el mismo ciclo de vida como en el Escenario 1. es decir, El usuario pulsa el botón "inicio". La actividad pasa por Pausa() y OnStop(). El usuario vuelve a iniciar la aplicación, haciendo que la Actividad A regrese al primer plano, nuevamente pasando por la misma secuencia onRestart(), onStart(), onResume() como en el Escenario 1.
Por lo que puedo decir, el La actividad no tiene forma de saber cómo se reanudó, simplemente sabe que se la está devolviendo a la vista. De hecho, tengo la sensación de que realmente no existe el concepto de una "Aplicación" en Android, en el sentido de algo que tiene un único punto de entrada y salida.
¿Por qué te preocupas por esto? – Macarse
Ah. En realidad, estoy tratando de rastrear el número de lanzamientos de aplicaciones, pero hasta ahora no he encontrado una manera de distinguir entre los diferentes escenarios onRestart(). –
Tenga en cuenta que hay otros casos en los que se reanudará una actividad, además del uso del botón de inicio. ¿Es un nuevo lanzamiento de la aplicación cuando el usuario recibe una llamada telefónica, el sistema mata su aplicación y luego la reanuda? Creo que será mejor hacer un seguimiento de las interacciones en su aplicación, en lugar del "lanzamiento", como quiera que esté definido. – sargas