Setelah pelajaran ini kamu bisa memilih data yang cocok disimpan sebagai pasangan kunci dan nilai, membaca kunci yang belum ada dengan nilai bawaan, dan menelusuri try, on, catch, dan finally.
±13 menit
3 latihan
Diperiksa 28 Okt 2026
Latihan di pelajaran ini butuh akun gratis. Progres, kode, dan catatanmu hanya tersimpan di browser ini. Masuk untuk menyimpannya
Materi
Data kecil yang perlu diingat antarsesi, seperti pilihan tema atau kode cabang terakhir, bisa disimpan di perangkat sebagai pasangan kunci dan nilai dengan plugin shared_preferences. Setelah SharedPreferences.getInstance(), setter seperti setInt, setBool, dan setString menyimpan nilai, sedangkan getter getInt, getBool, dan getString membacanya. Getter mengembalikan null bila kuncinya belum pernah disimpan, sehingga pola bacanya prefs.getInt('kunjungan') ?? 0. Getter melempar galat bila tipe yang tersimpan berbeda dari yang diminta.
Penyimpanan ini punya batas: hanya tipe primitif (int, double, bool, String, dan List<String>), tidak dirancang untuk data dalam jumlah besar, dan tidak menjamin data bertahan setelah aplikasi dimulai ulang. Data yang lebih besar atau yang tidak boleh hilang membutuhkan basis data.
Galat yang diperkirakan, seperti jaringan putus atau JSON rusak, ditangkap dengan try. on JenisGalat menangkap satu jenis galat, catch (e) mengambil objek galatnya, dan finally selalu berjalan, termasuk saat break keluar dari perulangan. Galat yang lolos saat build menampilkan layar galat merah di mode debug dan latar abu-abu di mode rilis.
Latihan
0/3 lulus
Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.
Latihan 1 dari 3
catatKunjungan() dipanggil sekali setiap aplikasi dibuka. Aplikasi baru dipasang, lalu dibuka tiga kali, dan datanya tersimpan normal. Berapa nilai yang dikembalikan pada pembukaan ketiga?