Siklus Hidup Android
Pahami siklus hidup activity dan composition.
Siklus Hidup Android adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Android Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Android Academy mencakup 4 pelajaran total.
Apa Itu Siklus Hidup?
Setiap Activity Android berpindah melalui serangkaian status saat pengguna membuka, meninggalkan, dan kembali ke aplikasi Anda. Inilah siklus hidup.
Memahaminya memungkinkan Anda memulai dan menghentikan pekerjaan pada waktu yang tepat.
Callback Inti Activity
Callback siklus hidup Activity klasik dijalankan secara berurutan:
onCreate— Activity sedang dibuat.onStart— mulai terlihat.onResume— berada di latar depan dan interaktif.onPause/onStop/onDestroy— meninggalkan layar.
Alur yang Umum
Membuka aplikasi: onCreate → onStart → onResume.
Menekan tombol beranda: onPause → onStop.
Kembali: onRestart → onStart → onResume.
Status Siklus Hidup vs Peristiwa
Pustaka Lifecycle Jetpack memodelkannya dengan States (CREATED, STARTED, RESUMED, DESTROYED) dan Events (ON_CREATE, ON_START, ...).
Komponen dapat mengamati hal ini tanpa menimpa callback mentah.
LifecycleOwner
Activity, Fragment, dan host Compose adalah LifecycleOwners. Komponen tersebut mengekspos objek Lifecycle yang dapat diamati oleh komponen lain.
val owner: LifecycleOwner = this // an Activity
val lifecycle = owner.lifecycleMengapa Ini Penting bagi Sumber Daya
Banyak sumber daya seharusnya hanya aktif saat layar terlihat:
- Pembaruan lokasi.
- Pendengar sensor.
- Sesi kamera.
Mulai di onStart/onResume dan hentikan di onStop/onPause untuk menghemat baterai dan menghindari kebocoran.
Siklus Hidup di Jetpack Compose
Composable tidak memiliki callback Activity. Sebagai gantinya, composable memiliki siklus hidup komposisi: masuk ke komposisi, dikomposisi ulang, lalu akhirnya meninggalkannya.
Merespons Komposisi dengan DisposableEffect
DisposableEffect menjalankan penyiapan saat Composable memasuki komposisi dan pembersihan saat meninggalkannya.
@Composable
fun Screen() {
DisposableEffect(Unit) {
// setup, e.g. register listener
onDispose {
// cleanup when leaving composition
}
}
}Mengamati Siklus Hidup Sebenarnya di Compose
Untuk merespons peristiwa siklus hidup Activity yang sebenarnya dari Composable, amati LifecycleOwner dengan DefaultLifecycleObserver.
@Composable
fun OnResume(onResume: () -> Unit) {
val owner = LocalLifecycleOwner.current
DisposableEffect(owner) {
val obs = object : DefaultLifecycleObserver {
override fun onResume(o: LifecycleOwner) = onResume()
}
owner.lifecycle.addObserver(obs)
onDispose { owner.lifecycle.removeObserver(obs) }
}
}ViewModel dan Siklus Hidup
Ingat: ViewModel bertahan lebih lama daripada status siklus hidup individual seperti onStart/onStop. ViewModel hanya dihapus saat pemiliknya benar-benar sudah tidak ada. Karena itulah status aman disimpan di sana.
Menggabungkan Semuanya
Layar yang terstruktur dengan baik:
- Menyimpan status yang tahan lama dalam ViewModel.
- Memulai/menghentikan sumber daya yang hanya diperlukan saat terlihat dengan memperhatikan siklus hidup.
- Mengumpulkan aliran hanya saat UI setidaknya berada pada STARTED (pelajaran berikutnya).
Pemeriksaan Singkat
Uji pengetahuan Anda tentang siklus hidup.
Ringkasan
Anda telah mempelajari:
- Activity berpindah melalui status CREATED, STARTED, RESUMED, DESTROYED.
- Compose memiliki siklus hidup komposisinya sendiri, yang ditangani melalui
DisposableEffect. - Amati
LifecycleOwneruntuk merespons peristiwa siklus hidup yang sebenarnya. - ViewModel sengaja bertahan lebih lama daripada status-status ini.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Siklus Hidup Android” gratis?
Ya — teks lengkap “Siklus Hidup Android” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Android Academy, upgrade ke CoddyKit PRO. Kursus Android Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Siklus Hidup Android”?
Pahami siklus hidup activity dan composition. Kamu berlatih Android Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Android Academy?
Tidak diperlukan pengalaman sebelumnya. Android Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Siklus Hidup Android” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Android Academy ini?
Ya. Setiap pelajaran Android Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengapa Menggunakan ViewModel?
- Menyediakan State dari ViewModel
- Siklus Hidup Android
- collectAsStateWithLifecycle