Когда именно вызываются onSaveInstanceState () и onRestoreInstanceState ()?
На следующем рисунке (изофициальный документ) описывает хорошо известныйжизненный цикл активности Android:
С другой стороны, когда активность уничтожается системой (например, из-за необходимости восстановления памяти), состояние активности иногда автоматическисохранено и восстановлено с помощью методовonSaveInstanceState()
а такжеonRestoreInstanceState()
, как показано на следующем рисунке (также изофициальный документ):
Я знаю чтоonSaveInstanceState()
являетсяне всегда называется когда деятельность собирается быть уничтожена. Например, если он уничтожен из-за того, что пользователь нажал кнопку «назад», состояние активности не сохраняется. Но в тех случаях, когда государствоявляется сохранены и восстановлены, иonSaveInstanceState()
/ onRestoreInstanceState()
позвони,когда именно они называются?
Например, согласно приведенным выше цифрам,onRestoreInstanceState()
может быть вызван раньшеonStart()
или послеonStart()
но преждеonResume()
или послеonResume()
, Точно так же существует несколько возможностей дляonSaveInstanceState()
, Так когда же они называются точно?
В идеале, я хотел бы увидетькомбинированная диаграмма, показывающая состояния жизненного цикла активности и методы сохранения / восстановления, если это существует.