Tugas 7 - Pemrograman Perangkat Bergerak (B)

Nama      : Yusna Millaturrosyidah

NRP        : 5025211254

Kelas      : Pemrograman Perangkat Bergerak (B)

Dessert Clicker App

Deskripsi Aplikasi

Dessert Clicker adalah aplikasi Android interaktif yang dirancang untuk menghibur pengguna dengan konsep sederhana namun adiktif. Di dalam aplikasi ini, setiap kali pengguna mengetuk gambar makanan penutup di layar, aplikasi akan secara otomatis "membeli" makanan penutup tersebut untuk pengguna. Setiap pembelian ini akan mengupdate jumlah total makanan penutup yang telah dibeli dan juga total pendapatan yang diperoleh dari semua makanan penutup tersebut. Namun, aplikasi ini mengandung beberapa bug terkait dengan siklus hidup Android yang dapat menyebabkan masalah, seperti mereset jumlah makanan penutup kembali ke nol dalam kondisi tertentu. Meskipun sederhana, aplikasi ini memberikan pengalaman bermain yang menyenangkan dengan tujuan mengklik makanan penutup sebanyak mungkin untuk meningkatkan jumlah dan pendapatan.

Implementasi Dessert Clicker App

  1. Memeriksa metode onCreate() dan menambahkan logging
    • Dalam diagram life cycle activity, metode onCreate() harus diimplementasikan oleh setiap aktivitas untuk melakukan inisialisasi satu kali, seperti memanggil setContent() untuk mengatur tata letak UI. Dalam Dessert Clicker, onCreate() menginisialisasi tema aplikasi dan memanggil fungsi setContent untuk mengatur konten UI. Logging ditambahkan dengan Log.d(TAG, "onCreate Called") untuk memonitor kapan onCreate() dipanggil.

  2. Menambahkan metode onStart()
    • Metode life cycle onStart() dipanggil segera setelah onCreate(). Setelah onStart() dijalankan, aktivitas Anda akan muncul di layar. Berbeda dengan onCreate(), yang hanya dipanggil sekali untuk menginisialisasi aktivitas, onStart() bisa dipanggil oleh sistem beberapa kali selama life cycle aktivitas. Dalam kode Dessert Clicker, onStart() menambahkan logging untuk memonitor kapan metode ini dipanggil.

  3. Menambahkan logging ke metode life cycle lainnya
    • Logging diterapkan untuk semua metode life cycle lainnya seperti onResume(), onRestart(), onPause(), onStop(), dan onDestroy(). Logging ini membantu memantau perubahan status aktivitas saat aplikasi berjalan.

  4. Memahami kasus life cycle
    • Meskipun onStop() tidak dipanggil, fokus interaksi dapat bergeser ke aktivitas "berbagi". UI perlu tetap terupdate untuk menjaga fungsi aplikasi, dengan kode ringan di dalam onPause(). onResume() harus dipastikan dipanggil saat keluar dari dialog berbagi karena fokus perlu dijaga.

  5. Menyelidiki perubahan konfigurasi
    • Perubahan konfigurasi perangkat, seperti rotasi layar, menyebabkan aktivitas dihentikan dan dibangun kembali. Callback onDestroy() dipanggil sebelum aktivitas dihancurkan, baik oleh aplikasi atau sistem karena perubahan konfigurasi. Logging membantu memantau peristiwa ini.

Berikut merupakan hasil dari implementasi yang telah dilakukan :

Tampilan awal Aplikasi Dessert Clicker

Tampilan setelah gambar cake diclick


Komentar

Postingan Populer