Preferences
Artikel ini menjelaskan cara menggunakan antarmuka .NET Multi-platform App UI (.NET MAUI). IPreferences
Antarmuka ini membantu menyimpan preferensi aplikasi di penyimpanan kunci/nilai.
Implementasi IPreferences
default antarmuka tersedia melalui Preferences.Default
properti . IPreferences
Antarmuka dan Preferences
kelas terkandung dalam Microsoft.Maui.Storage
namespace layanan.
Tipe penyimpanan
Preferences disimpan dengan String kunci. Nilai preferensi harus merupakan salah satu jenis data berikut:
Nilai disimpan dalam format biner 64-bit (bilangan DateTime
bulat panjang) menggunakan dua metode yang ditentukan oleh DateTime
kelas :
- Metode
ToBinary
ini digunakan untuk mengodekanDateTime
nilai. - Metode
FromBinary
mendekode nilai.
Lihat dokumentasi metode ini untuk penyesuaian yang mungkin dibuat untuk nilai yang didekode saat DateTime
disimpan yang bukan nilai Waktu Universal Terkoordinasi (UTC).
Mengatur preferensi
Preferences diatur dengan memanggil Preferences.Set
metode , menyediakan kunci dan nilai:
// Set a string value:
Preferences.Default.Set("first_name", "John");
// Set an numerical value:
Preferences.Default.Set("age", 28);
// Set a boolean value:
Preferences.Default.Set("has_pets", true);
Mendapatkan preferensi
Untuk mengambil nilai dari preferensi, Anda meneruskan kunci preferensi, diikuti dengan nilai default saat kunci tidak ada:
string firstName = Preferences.Default.Get("first_name", "Unknown");
int age = Preferences.Default.Get("age", -1);
bool hasPets = Preferences.Default.Get("has_pets", false);
Periksa kunci
Mungkin berguna untuk memeriksa apakah kunci ada di preferensi atau tidak. Meskipun Get
Anda telah menetapkan nilai default ketika kunci tidak ada, mungkin ada kasus di mana kunci ada, tetapi nilai kunci cocok dengan nilai default. Jadi Anda tidak dapat mengandalkan nilai default sebagai indikator bahwa kunci tidak ada. ContainsKey
Gunakan metode untuk menentukan apakah kunci ada:
bool hasKey = Preferences.Default.ContainsKey("my_key");
Menghapus satu atau semua kunci
Remove
Gunakan metode untuk menghapus kunci tertentu dari preferensi:
Preferences.Default.Remove("first_name");
Untuk menghapus semua kunci, gunakan Clear
metode :
Preferences.Default.Clear();
Kunci bersama
Preferensi yang disimpan oleh aplikasi Anda hanya terlihat oleh aplikasi Anda. Namun, Anda juga dapat membuat preferensi bersama yang dapat digunakan oleh ekstensi lain atau aplikasi jam tangan. Saat Anda mengatur, menghapus, atau mengambil preferensi, parameter string opsional dapat disediakan untuk menentukan nama kontainer tempat preferensi disimpan.
Metode berikut mengambil parameter string bernama sharedName
:
Preferences.Set
Preferences.Get
Preferences.Remove
Preferences.Clear
Penting
Harap baca spesifikasi implementasi platform, karena preferensi bersama memiliki implementasi khusus perilaku
Integrasikan dengan pengaturan sistem
Preferences disimpan secara asli, yang memungkinkan Anda untuk mengintegrasikan pengaturan Anda ke dalam pengaturan sistem asli. Ikuti dokumentasi platform untuk berintegrasi dengan platform:
- Apple: Menerapkan iOS Pengaturan Bundle
- Android: Memulai layar Pengaturan
Perbedaan platform
Bagian ini menjelaskan perbedaan khusus platform dengan API preferensi.
Semua data disimpan ke dalam Berbagi Preferences. Jika tidak sharedName
ditentukan, Berbagi Preferences default akan digunakan. Jika tidak, nama digunakan untuk mendapatkan Shared Preferences privat dengan nama yang ditentukan.
Persistensi
Menghapus instalan aplikasi menyebabkan semua preferensi dihapus, kecuali saat aplikasi berjalan di Android 6.0 (API level 23) atau yang lebih baru, saat menggunakan fitur Auto Backup . Fitur ini aktif secara default dan mempertahankan data aplikasi, termasuk Bersama Preferences, yang digunakan Preferences API. Anda dapat menonaktifkannya dengan mengikuti dokumentasi Pencadangan Otomatis Google.
Batasan
Performa dapat terpengaruh jika Anda menyimpan teks dalam jumlah besar, karena API dirancang untuk menyimpan teks dalam jumlah kecil.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk