Tugas 10 - Membuat Siklus Proses Aktivitas dengan Aplikasi Dessert Clicker

Pada tugas kali ini, saya akan mencoba melakukan debug error pada starter project di repositori github milik Google Developer. Sebagai starter project, Anda dapat melakukan cloning repositori pada branch main github berikut. Anda dapat melakukan clone dengan command git clone -b starter https://github.com/google-developer-training/basic-android-kotlin-compose-training-dessert-clicker.git. 

Ketika starter project dijalankan, terdapat sedikit bug saat menyimpan value aplikasi. Aplikasi akan terreset ketika layar device diubah dari portrait ke landscape atau sebaliknya. Setelah dilakukan debug aplikasi dengan memanfaatkan fungsi Log untuk menampilkan return value setiap aktivitas pada aplikasi, ditemukan bug pada fungsi DessertClickerApp()

var revenue by remember { mutableStateOf(0) }
var dessertsSold by remember { mutableStateOf(0) }

val currentDessertIndex by remember { mutableStateOf(0) }

var currentDessertPrice by remember {
mutableStateOf(desserts[currentDessertIndex].price)
}
var currentDessertImageId by remember {
mutableStateOf(desserts[currentDessertIndex].imageId)
}
var revenue by rememberSaveable { mutableStateOf(0) }
var dessertsSold by rememberSaveable { mutableStateOf(0) }

val currentDessertIndex by rememberSaveable { mutableStateOf(0) }

var currentDessertPrice by rememberSaveable {
mutableStateOf(desserts[currentDessertIndex].price)
}
var currentDessertImageId by rememberSaveable {
mutableStateOf(desserts[currentDessertIndex].imageId)
}

Pada baris kode pertama, remember akan menyimpan value aktivitas, tetapi mereset ketika terjadi perubahan pada aplikasi seperti perubahan layar device. Sebagai gantinya, dapat menggunakan rememberSaveable untuk mengatasi masalah tersebut.



Komentar

Postingan populer dari blog ini

Tugas 1 - Ulasan Sejarah Mobile Phone dan Pemrograman

Tugas 3 - Membuat Aplikasi Ucapan Ulang Tahun

Tugas 2 - Membuat Program Android Sederhana