Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android SDK

Apa itu Siklus Hidup Aktivitas Android?

by
Read Time:8 minsLanguages:

Indonesian (Bahasa Indonesia) translation by Kholisa Nurrahmah (you can also view the original English article)

Di postingan saya sebelumnya, anda belajar bahwa Intents membiarkan kami mengirim pesan dari satu komponen android ke komponen lainnya. Nah, salah satu komponen yang sangat penting adalah sebuah Kegiatan.

Kegiatan adalah bagian dasar dari pengembangan aplikasi android. Dan tidak mungkin untuk memahami kegiatan tanpa memahami siklus hidup mereka. Dalam posting ini, anda akan mempelajari semua tentang siklus hidup aktivitas.

Siklus Hidup Aktivitas

Aktivitas adalah satu layar di android. Ini seperti sebuah jendela di aplikasi desktop, atau Frame di program Java. Aktivitas memungkinkan anda menempatkan semua komponen UI atau widget anda di bagian layar.

Penting untuk dipahami bahwa aktivitas memiliki siklus hidup: artinya hal itu dapat terjadi di salah satu dari beberapa negara bagian yang berbeda, tergantung pada apa yang terjadi dengan aplikasi dan interaksi pengguna.

Metode Siklus Hidup

Mari kita lihat lebih dekat siklus hidup aktivitas android. Setiap kali keadaan kegiatan berubah, salah satu metode siklus hidup berikut akan dipanggil di kelas Aktivitas.

onCreate (): Ini disebut saat Aktivitas pertama kali diinisialisasi. Anda perlu menerapkan metode ini untuk melakukan inisialisasi yang spesifik dengan aktivitas anda.

onStart (): Ini disebut pertama kalinya aktivitas akan segera terlihat oleh pengguna, karena kegiatan yang mempersiapkan untuk menuju ke latar depan menjadi interaktif. Setelah panggilan balik selesai, metode onResume () akan dipanggil.

onResume (): Ketika aktivitas masuk ke keadaan ini, ia mulai berinteraksi dengan pengguna.  Aktivitas berlanjut di negara ini sampai terjadi sesuatu untuk mengambil fokus dari aplikasi atau aktivitas (seperti panggilan masuk). Bila ini terjadi, metode onPause () akan dipanggil.

onPause (): Metode ini digunakan untuk menghentikan sementara operasi yang seharusnya tidak terjadi bila aktivitas dalam status berhenti sementara. Panggilan ke metode ini menunjukkan bahwa pengguna meninggalkan aplikasi.  Misalnya, di aplikasi pemutar musik, panggilan masuk akan menyebabkan aplikasi beralih ke status yang dijeda. Ini harus membisukan atau menjeda musik yang sedang diputar. Saat pengguna kembali ke aplikasi, metode onResume () akan dipanggil.

onStop (): Metode ini disebut saat aktivitas tidak lagi terlihat di aplikasi. Hal itu bisa terjadi, misalnya saat aktivitas lain telah dimuat dan menggunakan layar penuh di perangkat ini.  Bila metode ini disebut, aktivitas dikatakan berada dalam keadaan berhenti. Dalam keadaan ini, sistem memanggil onRestart () untuk mengembalikan interaktivitas dengan Aktivitas. Atau memanggil metode onDestroy () untuk menghancurkan aktivitas.

onDestroy (): Ini dipanggil sebelum Aktivitas dihancurkan. Sistem memanggil metode ini saat pengguna menghentikan Aktivitas, atau karena sistem tersebut untuk sementara menghancurkan proses yang berisi aktivitas untuk menghemat ruang.  Pastikan untuk membebaskan sumber daya yang telah dibuat aktivitas anda dalam metode ini, atau aplikasi anda akan mengalami kebocoran memori!

onRestart (): Ini dipanggil saat aktivitas dimulai ulang setelah dihentikan.

Memulai sebuah kegiatan

Sebagian besar interaksi pengguna dengan aplikasi menyebabkan aktivitas aktif diubah. Jadi, transisi aplikasi antara aktivitas yang berlanjut selama masa pemakainnya.

Anda perlu mengaitkan Kegiatan bersama saat Aktivitas perlu memulai Kegiatan lain. Untuk memulai sebuah Kegiatan, anda menggunakan startActivity () atau startActivityForResult ().

Anda harus lulus Intent dalam kedua kasus.

startActivity () digunakan jika Aktivitas yang baru mulai tidak perlu mengembalikan hasilnya.

Cuplikan kode berikut menunjukkan bagaimana memulai aktivitas lain dengan menggunakan metode ini:

Anda juga dapat melakukan tindakan seperti melewatkan data dari satu kegiatan ke aktivitas lainnya. Dalam kasus ini, aktivitas anda saat ini (Aktivitas panggilan) ingin melewati data target aktivitas.  Di sinilah maksudnya hal tersebut bisa berguna. Untuk belajar tentang menggunakan Intents memulai sebuah kegiatan, lihat artikel saya sebelumnya.

Memulai sebuah Kegiatan dengan Hasil

startActivityForResult () digunakan untuk memulai aktivitas lain dan mengharapkan untuk mendapatkan data kembali dari aktivitas yang baru mulai. Dengan kata lain, gunakan ini bila anda ingin mendapatkan hasil dari aktivitas target kembali ke aktivitas menelepon, misalnya,  jika target aktivitas mengumpulkan beberapa informasi pengguna dalam sebuah dialog modal.

Anda menerima hasil dari aktivitas dalam metode onActivityResult(int requestCode, int resultCode, Intent data). Hasilnya akan dikembalikan sebagai maksud.

Contoh Memulai sebuah Kegiatan

Berikut adalah contoh untuk menunjukkan bagaimana memulai sebuah kegiatan bekerja.

Pertama, anda membuat aktivtas utama anda dengan metode onCreate () Anda, file tata letak, dan kode permintaan.

Dalam metode onCreate () anda, anda akan membuat contoh baru dari sebuah tujuan untuk memulai aktivitas kedua anda.

Bila anda siap untuk memulai aktivitas tersebut, katakanlah sebagai tanggapan atas klik tombol, anda akan menghubungi startActivityForResult (), yang akan melewati maksud yang baru dibuat dan kode permintaan.

Namun, di aktivitas utama anda, anda perlu menangani aktivitas hasil. Anda melakukan ini dengan menerapkan metode onActivityResult (). Ini adalah bagaimana anda akan menerima hasil dari kegiatan lainnya.

Begini cara yang seharusnya terlihat:

Sekarang  maju dan ciptakan aktivitas kedua anda. Seharusnya terlihat seperti kode di bawah ini.

Menghentikan Aktivitas

Sebelum suatu kegiatan berakhir, metode siklus hidup yang sesuai akan dipanggil.

Metode onPause () harus menghentikan semua pendengar dan update UI. Metode onStop () harus menyimpan data aplikasi. Akhirnya, metode onDestroy () akan membebaskan semua sumber daya yang telah dialokasikan oleh kegiatan.

Saat pengguna beralih kembali ke aplikasi yang telah dihentikan oleh sistem, metode onResume () dipanggil. Berdasarkan data yang tersimpan, dapat mendaftar ulang pendengar dan memicu pembaruan UI.

Instansi Aktivitas Negara

Aktivitas membutuhkan cara untuk menyimpan data negara dan pengguna yang berharga yang telah diperolehnya. Data ini mungkin diperoleh dari masukan pengguna atau dibuat saat aktivitas tidak di-layar.

Misalnya, perubahan orientasi perangkat dapat menyebabkan aktivitas dihancurkan dan diciptakan kembali.  Dalam skenario seperti itu, anda harus memastikan untuk menyimpan semua aktivitas sebelum dimusnahkan dan dimuat kembali saat dibuat kembali. Jika tidak, data apa pun yang aktivitas anda miliki saat itu benar-benar hilang.

Untuk menyimpan aktivitas, anda dapat mengganti metode onSaveInstanceState (). Metode ini melewati Bundleobject sebagai parameter. Bundel bisa berisi string, tipe data primitif, atau objek.  Dalam metode ini, cukup tambahkan data keadaan penting ke bundel. Bundel ini akan dikembalikan ke aktivitas nanti sehingga anda dapat memulihkan status aktivitas.

Untuk mengekstrak negara yang disimpan dari bundel dan mengembalikannya, terapkan metode onRestoreInstanceState (). Callback ini dipanggil antara metode siklus hidup onStart () dan onResume ().Kita akan melihat lebih dalam contoh aktivitas di artikel mendatang.

Kita akan melihat lebih dalam contoh aktivitas di artikel mendatang.

Kesimpulan

Setelah membaca tulisan ini, anda akan memiliki pemahaman yang baik tentang bagaimana siklus kerja aktivitas bekerja. Dan anda telah belajar bahwa ada dua cara untuk memulai sebuah kegiatan, dan juga mendapatkan beberapa petunjuk bagaimana cara menangani dalam siklus hidup aktivitas.

Terima kasih telah membaca, dan saat anda berada di sini, lihat beberapa kiriman kami yang lain mengenai aplikasi android.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.