La siguiente figura (del documento oficial ) describe el ciclo de vida conocido de una actividad de Android:
Por otro lado, cuando el sistema destruye la actividad (por ejemplo, porque es necesario recuperar la memoria), el estado de la actividad a veces se guarda y restaura automáticamente mediante los métodos onSaveInstanceState()
y onRestoreInstanceState()
, como se ilustra en la siguiente figura (también del documento oficial ):
Soy consciente de que onSaveInstanceState()
está no siempre llama cuando una actividad está a punto de ser destruido. Por ejemplo, si se destruye porque el usuario ha presionado el botón "Atrás", el estado de actividad no se conserva. Sin embargo, en los casos en que el estado está guardada y restaurada, y onSaveInstanceState()
/ onRestoreInstanceState()
ser llamado, cuando exactamente cómo se llaman ?
Por ejemplo, de acuerdo con las figuras anteriores, onRestoreInstanceState()
podría llamarse antes onStart()
o después, onStart()
pero antes onResume()
o después onResume()
. Del mismo modo, existen varias posibilidades para onSaveInstanceState()
. Entonces, ¿cuándo se llaman exactamente?
Idealmente, lo que me gustaría es ver un diagrama combinado que muestre los estados del ciclo de vida de la actividad y los métodos de guardar / restaurar , si es que existe.