Gambar berikut (dari dokumen resmi ) mendeskripsikan siklus hidup aktivitas Android yang terkenal:
Di sisi lain, ketika aktivitas dimusnahkan oleh sistem (misalnya karena memori perlu diambil kembali), status aktivitas terkadang secara otomatis disimpan dan dipulihkan dengan menggunakan metode onSaveInstanceState()
dan onRestoreInstanceState()
, seperti yang diilustrasikan oleh gambar berikut (juga dari dokumen resmi ):
Saya sadar bahwa onSaveInstanceState()
ini tidak selalu disebut ketika suatu kegiatan akan segera dihancurkan. Misalnya, jika dimusnahkan karena pengguna telah menekan tombol "kembali", status aktivitas tidak dipertahankan. Namun dalam kasus ketika negara yang diselamatkan dan dipulihkan, dan onSaveInstanceState()
/ onRestoreInstanceState()
dipanggil, kapan tepatnya yang mereka disebut ?
Misalnya menurut gambar di atas, onRestoreInstanceState()
mungkin bisa dipanggil sebelum onStart()
, atau sesudah onStart()
tapi sebelum onResume()
, atau sesudah onResume()
. Demikian pula, ada beberapa kemungkinan onSaveInstanceState()
. Jadi kapan tepatnya mereka dipanggil?
Idealnya, yang saya inginkan adalah melihat diagram gabungan yang menunjukkan status siklus hidup aktivitas dan metode simpan / pulihkan , jika ada.