Bagikan melalui


Menyimpan dan memuat pengaturan di aplikasi UWP

Topik ini mencakup apa yang perlu Anda ketahui untuk mulai memuat, dan menyimpan, pengaturan di aplikasi Platform Windows Universal (UWP). API utama diperkenalkan, dan tautan disediakan untuk membantu Anda mempelajari lebih lanjut.

Gunakan pengaturan untuk mengingat aspek aplikasi Anda yang dapat disesuaikan pengguna. Misalnya, pembaca berita dapat menggunakan pengaturan aplikasi untuk menyimpan sumber berita mana yang akan ditampilkan dan font apa yang akan digunakan untuk membaca artikel.

Kita akan melihat kode untuk menyimpan dan memuat pengaturan aplikasi.

Apa yang perlu Anda ketahui

Gunakan pengaturan aplikasi untuk menyimpan data konfigurasi seperti preferensi pengguna dan status aplikasi.

Jenis data berikut dapat digunakan dengan pengaturan: bilangan bulat, ganda, float, karakter, string, Titik, DateTime, dan banyak lagi. Anda juga dapat menyimpan instans kelas ApplicationDataCompositeValue yang berguna ketika ada beberapa pengaturan yang harus diperlakukan sebagai unit. Misalnya, nama font dan ukuran titik untuk menampilkan teks di panel baca aplikasi Anda harus disimpan/dipulihkan sebagai satu unit. Ini mencegah satu pengaturan tidak sinkron dengan yang lain karena akses bersamaan, seperti antara program utama dan tugas latar belakang.

Berikut adalah API utama yang perlu Anda ketahui untuk menyimpan atau memuat pengaturan aplikasi:

  • Windows.Storage.ApplicationData.Current.Local Pengaturan mendapatkan kontainer pengaturan aplikasi dari penyimpanan data aplikasi lokal. Pengaturan disimpan di sini disimpan di perangkat.
  • Windows.Storage.ApplicationData.Current.Roaming Pengaturan mendapatkan kontainer pengaturan aplikasi dari penyimpanan data aplikasi roaming. Pengaturan disimpan di sini tidak lagi menjelajah (pada Windows 11), tetapi penyimpanan pengaturan masih tersedia. Penggantian yang direkomendasikan untuk Roaming Pengaturan adalah Azure App Service. Azure App Service didukung secara luas, terdokumen dengan baik, andal, dan mendukung skenario lintas platform/lintas ekosistem seperti iOS, Android, dan web.
  • Windows.Storage.ApplicationDataContainer adalah kontainer yang mewakili pengaturan aplikasi sebagai pasangan kunci/nilai. Gunakan kelas ini untuk membuat dan mengambil nilai pengaturan.
  • Windows.Storage.ApplicationDataCompositeValue mewakili beberapa pengaturan aplikasi yang harus diserialisasikan sebagai unit. Ini berguna ketika satu pengaturan tidak boleh diperbarui secara independen dari pengaturan lain.

Simpan pengaturan aplikasi

Untuk pengenalan ini, kami akan fokus pada dua skenario sederhana: menyimpan dan memuat pengaturan aplikasi sederhana, dan menyimpan dan memuat pengaturan font/ukuran font komposit.

ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;

// Save a setting locally on the device
localSettings.Values["test setting"] = "a device specific setting";

// Save a composite setting locally on the device
Windows.Storage.ApplicationDataCompositeValue composite = new Windows.Storage.ApplicationDataCompositeValue();
composite["Font"] = "Calibri";
composite["FontSize"] = 11;
localSettings.Values["FontInfo"] = composite;

Simpan pengaturan dengan terlebih dahulu mendapatkan ApplicationDataContainer untuk penyimpanan data pengaturan lokal dengan Windows.Storage.ApplicationData.Current.LocalSettings. Pasangan kamus kunci/nilai yang Anda tetapkan ke instans ini disimpan di penyimpanan data pengaturan perangkat lokal.

Dalam cuplikan kode di atas, ApplicationDataCompositeValue menyimpan beberapa pasangan kunci/nilai. Nilai komposit berguna ketika Anda memiliki beberapa pengaturan yang seharusnya tidak sinkron satu sama lain. Saat Anda menyimpan ApplicationDataCompositeValue, nilai disimpan dan dimuat sebagai unit, atau secara atomik. Dengan cara ini pengaturan yang terkait tidak akan tidak sinkron.

Memuat pengaturan aplikasi

ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;

// load a setting that is local to the device
String localValue = localSettings.Values["test setting"] as string;

// load a composite setting
Windows.Storage.ApplicationDataCompositeValue composite = (ApplicationDataCompositeValue)localSettings.Values["FontInfo"];
if (composite != null)
{
    String fontName = composite["Font"] as string;
    int fontSize = (int)composite["FontSize"];
}

Muat pengaturan dengan terlebih dahulu mendapatkan instans ApplicationDataContainer untuk penyimpanan data pengaturan lokal dengan Windows.Storage.ApplicationData.Current.LocalSettings. Kemudian gunakan untuk mengambil pasangan kunci/nilai. Jika data tidak ada, Anda akan mendapatkan objek null. Di C#, ini berarti bahwa localValue akan menjadi null jika pengaturan tidak ada.

Muat pengaturan komposit dengan mengikuti pola serupa. Mengakses pasangan kunci/nilai dari penyimpanan data pengaturan lokal. Jika data tidak ada, Anda akan mendapatkan ApplicationDataContainer null. Itu sebabnya ada if (composite != null) pemeriksaan dalam contoh kode di atas.

API dan dokumen yang berguna

Berikut adalah ringkasan cepat API, dan dokumentasi berguna lainnya, untuk membantu Anda mulai menyimpan dan memuat pengaturan aplikasi.

API yang Berguna

API Deskripsi
ApplicationData.Local Pengaturan Mendapatkan kontainer pengaturan aplikasi dari penyimpanan data aplikasi lokal.
ApplicationData.Roaming Pengaturan Mendapatkan kontainer pengaturan aplikasi dari penyimpanan data aplikasi roaming.
ApplicationDataContainer Kontainer untuk pengaturan aplikasi yang mendukung pembuatan, penghapusan, enumerasi, dan melintasi hierarki kontainer.
Namespace Windows.UI.Application Pengaturan Menyediakan kelas yang akan Anda gunakan untuk menentukan pengaturan aplikasi yang muncul di panel pengaturan shell Windows.

Dokumen yang berguna

Topik Deskripsi
Panduan untuk pengaturan aplikasi Menjelaskan praktik terbaik untuk membuat dan menampilkan pengaturan aplikasi.
Menyimpan dan mengambil pengaturan dan data aplikasi lainnya Panduan untuk menyimpan dan mengambil pengaturan.

Sampel kode yang berguna

Sampel kode Deskripsi
Sampel data aplikasi Skenario 2-4 berfokus pada pengaturan