Наступний малюнок (від офіційного документа ) описує відомий життєвий цикл діяльності Android:

З іншого боку, коли діяльність знищується системою (наприклад, тому, що потрібно відновити пам'ять), стан активності іноді автоматично зберігається та відновлюється за допомогою методів onSaveInstanceState()і onRestoreInstanceState(), як проілюстровано наступним малюнком (також від офіційного документа ):

Я знаю, що onSaveInstanceState()це не завжди називається, коли діяльність збирається знищити. Наприклад, якщо він знищений через те, що користувач натиснув кнопку "назад", стан активності не зберігається. Але в тих випадках , коли стан буде збережено і відновлено, і onSaveInstanceState()/ onRestoreInstanceState()додзвонилися, коли саме вони називаються ?
Наприклад, згідно з наведеними вище цифрами, вони onRestoreInstanceState()можуть називатися до onStart(), або після, onStart()але до onResume(), або після onResume(). Так само існує кілька можливостей для onSaveInstanceState(). То коли ж їх точно називають?
В ідеалі я хотів би побачити комбіновану діаграму, що показує стан життєвого циклу активності та методи збереження / відновлення , якщо такі існують.