Bagikan melalui


Tentukan sumber daya default yang digunakan aplikasi Anda

Jika aplikasi Anda tidak memiliki sumber daya yang cocok dengan pengaturan tertentu dari perangkat pelanggan, sumber daya default aplikasi akan digunakan. Topik ini menjelaskan cara menentukan sumber daya default tersebut.

Saat pelanggan menginstal aplikasi Anda dari Microsoft Store, pengaturan di perangkat pelanggan dicocokkan dengan sumber daya aplikasi yang tersedia. Pencocokan ini dilakukan sehingga hanya sumber daya yang sesuai yang perlu diunduh dan diinstal untuk pengguna tersebut. Misalnya, string dan gambar yang paling sesuai untuk preferensi bahasa pengguna, dan resolusi perangkat dan pengaturan DPI, digunakan. Misalnya, 200 adalah nilai default untuk scale, tetapi Anda dapat mengambil alih default tersebut jika Anda mau.

Bahkan untuk sumber daya yang tidak masuk ke paket sumber daya mereka sendiri (seperti gambar yang disesuaikan untuk pengaturan kontras tinggi), Anda dapat menentukan sumber daya default apa yang harus digunakan aplikasi pada waktu proses jika sumber daya yang cocok dengan pengaturan pengguna tidak dapat ditemukan. Misalnya, standard adalah nilai default untuk contrast, tetapi Anda dapat mengambil alih default tersebut jika Anda mau.

Setelan ini ditentukan dalam bentuk nilai kualifikasi sumber daya bawaan. Untuk penjelasan tentang apa itu kualifikasi sumber daya, penggunaan, dan tujuannya, lihat Menyesuaikan sumber daya Anda untuk bahasa, skala, kontras tinggi, dan kualifikasi lainnya.

Anda dapat mengonfigurasi apa default ini dengan salah satu dari dua cara. Anda dapat menambahkan file konfigurasi ke proyek Anda, atau Anda dapat mengedit file proyek Anda secara langsung. Gunakan opsi mana pun yang paling nyaman bagi Anda, atau mana yang paling sesuai dengan sistem build Anda.

Opsi 1. Gunakan priconfig.default.xml untuk menentukan nilai kualifikasi default

  1. Di Visual Studio, tambahkan item baru ke proyek Anda. Pilih File XML, dan beri nama file priconfig.default.xml.

  2. Di Penjelajah Solusi, pilih priconfig.default.xml dan centang jendela Properti. Build Action file harus diatur sebagai None, dan Copy to Output Directory harus diatur sebagai Do not copy.

  3. Ganti isi file dengan XML ini.

    <default>
       <qualifier name="Language" value="LANGUAGE-TAG(S)" />
       <qualifier name="Contrast" value="standard" />
       <qualifier name="Scale" value="200" />
       <qualifier name="HomeRegion" value="001" />
       <qualifier name="TargetSize" value="256" />
       <qualifier name="LayoutDirection" value="LTR" />
       <qualifier name="DXFeatureLevel" value="DX9" />
       <qualifier name="Configuration" value="" />
       <qualifier name="AlternateForm" value="" />
    </default>
    

    Nota Nilai LANGUAGE-TAG(S) perlu disinkronkan dengan bahasa default aplikasi Anda. Jika itu adalah satu tag bahasa BCP-47, maka bahasa default aplikasi Anda harus sama dengan tag tersebut. Jika ini adalah daftar tag bahasa yang dipisahkan koma, bahasa default aplikasi Anda harus menjadi tag pertama dalam daftar. Anda mengatur bahasa default aplikasi Anda di bidang Bahasa default pada tab Aplikasi di file sumber manifes paket aplikasi (Package.appxmanifest).

  4. Setiap <qualifier> elemen memberi tahu Visual Studio nilai apa yang akan digunakan sebagai default untuk setiap nama kualifikasi. Dengan konten file yang Anda miliki sejauh ini, Anda belum benar-benar mengubah perilaku Visual Studio. Dengan kata lain, Visual Studio sudah berfungsi seolah-olah file ini ada dengan konten ini, karena ini adalah nilai default. Jadi untuk mengganti nilai default dengan nilai default Anda sendiri, Anda harus mengubah nilai di dalam file. Berikut adalah contoh tampilan file jika Anda akan mengedit tiga nilai pertama.

    <default>
       <qualifier name="Language" value="de-DE" />
       <qualifier name="Contrast" value="black" />
       <qualifier name="Scale" value="400" />
       <qualifier name="HomeRegion" value="001" />
       <qualifier name="TargetSize" value="256" />
       <qualifier name="LayoutDirection" value="LTR" />
       <qualifier name="DXFeatureLevel" value="DX9" />
       <qualifier name="Configuration" value="" />
       <qualifier name="AlternateForm" value="" />
    </default>
    
  5. Simpan dan tutup file dan bangun kembali proyek Anda.

Untuk mengonfirmasi bahwa pengaturan awal yang diganti sedang diperhitungkan, cari file <ProjectFolder>\obj\<ReleaseConfiguration folder>\priconfig.xml dan pastikan bahwa isinya sesuai dengan pengganti yang Anda buat. Jika ya, maka Anda telah berhasil mengonfigurasi nilai kualifikasi sumber daya yang akan digunakan aplikasi Anda secara default. Jika kecocokan untuk pengaturan pengguna tidak ditemukan, sumber daya akan digunakan yang folder atau nama filenya berisi nilai kualifikasi default yang telah Anda tetapkan di sini.

Bagaimana cara kerjanya?

Di balik layar, Visual Studio meluncurkan alat bernama MakePri.exe untuk menghasilkan file yang dikenal sebagai Indeks Sumber Daya Paket (PRI), yang menjelaskan semua sumber daya aplikasi Anda, termasuk menunjukkan mana yang merupakan sumber daya default. Untuk detail tentang alat ini, lihat Mengkompilasi sumber daya secara manual dengan MakePri.exe. Visual Studio meneruskan file konfigurasi ke MakePri.exe. Konten file Anda priconfig.default.xml digunakan sebagai elemen file konfigurasi tersebut <default> , yang merupakan bagian yang menentukan kumpulan nilai kualifikasi yang dianggap default. Jadi, menambahkan dan mengedit priconfig.default.xml pada akhirnya memengaruhi konten file Indeks Sumber Daya Paket yang dihasilkan Visual Studio untuk aplikasi Anda dan termasuk dalam paket aplikasinya.

Nota Setiap kali Anda mengubah nilai <qualifier name="Language" ... /> elemen, Anda perlu menyinkronkan perubahan tersebut dengan bahasa default aplikasi Anda. Ini agar sumber daya bahasa yang diindeks dalam file PRI aplikasi Anda cocok dengan bahasa default manifes aplikasi Anda. Nilai dalam elemen <qualifier name="Language" ... /> menggantikan nilai dalam manifes terkait dengan konten <ProjectFolder>\obj\<ReleaseConfiguration folder>\priconfig.xml, namun, file tersebut dan manifes aplikasi Anda harus sesuai.

Menggunakan nama file yang berbeda dari priconfig.default.xml

Jika Anda memberi nama file priconfig.default.xmlAnda , maka Visual Studio akan mengenalinya dan menggunakannya secara otomatis. Jika Anda memberinya nama yang berbeda, maka Anda harus memberi tahu Visual Studio. Dalam file proyek Anda, antara tag pembuka dan penutupan elemen pertama <PropertyGroup> , tambahkan XML ini.

<AppxPriConfigXmlDefaultSnippetPath>FILE-PATH-AND-NAME</AppxPriConfigXmlDefaultSnippetPath>

Ganti FILE-PATH-AND-NAME dengan jalur dan nama file Anda.

Opsi 2. Gunakan file proyek Anda untuk menentukan nilai kualifikasi default

Ini adalah alternatif untuk Opsi 1. Setelah Anda memahami cara kerja Opsi 1, Anda dapat memilih untuk melakukan Opsi 2 sebagai gantinya, jika itu sesuai dengan pengembangan Anda dan/atau membangun alur kerja dengan lebih baik.

Dalam file proyek Anda, antara tag pembuka dan penutupan elemen pertama <PropertyGroup> , tambahkan XML ini.

<AppxDefaultResourceQualifiers>Language=LANGUAGE-TAG(S)|Contrast=standard|Scale=200|HomeRegion=001|TargetSize=256|LayoutDirection=LTR|DXFeatureLevel=DX9|Configuration=|AlternateForm=</AppxDefaultResourceQualifiers>

Berikut adalah contoh bagaimana hal itu mungkin terlihat setelah Anda mengedit tiga nilai pertama.

<AppxDefaultResourceQualifiers>Language=de-DE|Contrast=black|Scale=400|HomeRegion=001|TargetSize=256|LayoutDirection=LTR|DXFeatureLevel=DX9|Configuration=|AlternateForm=</AppxDefaultResourceQualifiers>

Simpan dan tutup, lalu bangun ulang proyek Anda.

Nota Setiap kali Anda mengubah Language= nilai, Anda perlu menyinkronkan perubahan tersebut dengan bahasa default aplikasi Anda di perancang manifes (dengan membuka Package.appxmanifest).