Bagikan melalui


Persyaratan paket aplikasi untuk aplikasi MSIX

Persyaratan

Ikuti panduan ini untuk menyiapkan paket aplikasi Anda untuk pengiriman ke Microsoft Store.

Sebelum Anda membuat paket aplikasi untuk Microsoft Store

Pastikan untuk menguji aplikasi Anda dengan Kit Sertifikasi Aplikasi Windows. Kami juga menyarankan agar Anda menguji aplikasi pada berbagai jenis perangkat keras. Perhatikan bahwa sampai kami mensertifikasi aplikasi Anda dan membuatnya tersedia dari Microsoft Store, aplikasi hanya dapat diinstal dan dijalankan di komputer yang memiliki lisensi pengembang.

Membangun paket aplikasi menggunakan Microsoft Visual Studio

Jika Anda menggunakan Microsoft Visual Studio sebagai lingkungan pengembangan, Anda sudah memiliki alat bawaan yang membuat paket aplikasi menjadi proses yang cepat dan mudah. Untuk informasi selengkapnya, lihat Mengemas aplikasi.

Catatan

Pastikan bahwa semua nama file Anda menggunakan ANSI.

Saat membuat paket di Visual Studio, pastikan Anda masuk dengan akun yang sama yang terkait dengan akun pengembang Anda. Beberapa bagian manifes paket memiliki detail spesifik yang terkait dengan akun Anda. Info ini terdeteksi dan ditambahkan secara otomatis. Tanpa informasi tambahan yang ditambahkan ke manifes, Anda mungkin mengalami kegagalan unggahan paket.

Saat Anda membuat paket UWP aplikasi, Visual Studio dapat membuat file .msix atau appx, atau file .msixupload atau .appxupload. Untuk aplikasi UWP, kami sarankan Anda selalu mengunggah file .msixupload atau .appxupload di halaman Paket . Untuk informasi selengkapnya tentang mengemas aplikasi UWP untuk Toko, lihat Mengemas aplikasi UWP dengan Visual Studio.

Paket aplikasi Anda tidak perlu ditandatangani dengan sertifikat yang berakar pada otoritas sertifikat tepercaya.

Bundel aplikasi

Untuk aplikasi UWP, Visual Studio dapat menghasilkan app bundle (.msixbundle atau .appxbundle) untuk mengurangi ukuran aplikasi yang diunduh pengguna. Ini dapat membantu jika Anda telah menentukan aset khusus bahasa, berbagai aset skala gambar, atau sumber daya yang berlaku untuk versi Microsoft DirectX tertentu.

Catatan

 Satu app bundle dapat berisi paket Anda untuk semua arsitektur.

Dengan bundel aplikasi, pengguna hanya akan mengunduh file yang relevan, daripada semua sumber daya yang mungkin. Untuk informasi selengkapnya tentang bundel aplikasi, lihat Mengemas aplikasi dan Mengemas aplikasi UWP dengan Visual Studio.

Membangun paket aplikasi secara manual

Jika Anda tidak menggunakan Visual Studio untuk membuat paket, Anda harus membuat manifes paket secara manual.

Pastikan untuk meninjau dokumentasi manifes paket Aplikasi untuk detail dan persyaratan manifes lengkap. Manifes Anda harus mengikuti skema manifes paket untuk lulus sertifikasi.

Manifes Anda harus menyertakan beberapa info spesifik tentang akun dan aplikasi Anda. Anda dapat menemukan info ini dengan melihat Lihat detail identitas aplikasi di bagian Manajemen produk di halaman gambaran umum aplikasi Anda di dasbor.

Catatan

 Nilai dalam manifes peka huruf besar/kecil. Spasi dan tanda baca lainnya juga harus cocok. Masukkan nilai dengan hati-hati dan tinjau untuk memastikan bahwa nilai tersebut benar.

App bundles (.msixbundle atau .appxbundle) menggunakan manifes yang berbeda. Tinjau dokumentasi manifes Bundel untuk detail dan persyaratan untuk manifes bundel aplikasi. Perhatikan bahwa dalam .msixbundle atau .appxbundle, manifes dari setiap paket yang disertakan harus menggunakan elemen dan atribut yang sama, kecuali untuk atribut ProcessorArchitecture dari elemen Identity .

Tip

 Pastikan untuk menjalankan Kit Sertifikasi Aplikasi Windows sebelum Anda mengirimkan paket Anda. Ini dapat membantu Anda menentukan apakah manifes Anda memiliki masalah yang dapat menyebabkan kegagalan sertifikasi atau pengiriman.

Persyaratan format paket

Paket aplikasi Anda harus mematuhi persyaratan ini.

Properti paket aplikasi Persyaratan
Ukuran paket .msixbundle atau .appxbundle: Maksimum 25 GB per bundel
Paket .msix atau .appx yang menargetkan Windows 10 atau Windows 11: maksimum 25 GB per paket
Blokir hash peta Algoritma SHA2-256

Versi yang didukung

Untuk aplikasi UWP, semua paket harus menargetkan versi Windows 10 atau Windows 11 yang didukung oleh Store. Versi yang didukung paket Anda harus ditunjukkan dalam atribut MinVersion dan MaxVersionTested dari elemen TargetDeviceFamily dari manifes aplikasi.

File XML StoreManifest

StoreManifest.xml adalah file konfigurasi opsional yang mungkin disertakan dalam paket aplikasi. Tujuannya adalah untuk mengaktifkan fitur, seperti mendeklarasikan aplikasi Anda sebagai aplikasi perangkat Microsoft Store atau mendeklarasikan persyaratan bahwa paket bergantung pada berlaku untuk perangkat, yang tidak dicakup oleh manifes paket. Jika digunakan, StoreManifest.xml dikirimkan dengan paket aplikasi dan harus berada di folder akar proyek utama aplikasi Anda. Untuk informasi selengkapnya, lihat Skema StoreManifest.

Penomoran versi paket

Setiap paket yang Anda berikan harus memiliki nomor versi (disediakan sebagai nilai dalam atribut Versi elemen Paket/Identitas dalam manifes aplikasi). Microsoft Store memberlakukan aturan tertentu yang terkait dengan nomor versi, yang bekerja agak berbeda dalam versi OS yang berbeda.

Catatan

Topik ini mengacu pada "paket", tetapi kecuali disebutkan, aturan yang sama berlaku untuk nomor versi untuk file .msix/.appx dan .msixbundle/.appxbundle.

Penomoran versi untuk paket Windows 10 dan 11

Penting

Untuk paket Windows 10 atau Windows 11 (UWP), bagian terakhir (keempat) dari nomor versi dicadangkan untuk penggunaan Store dan harus dibiarkan sebagai 0 saat Anda membangun paket Anda (meskipun Store dapat mengubah nilai di bagian ini). Bagian lain harus diatur ke bilangan bulat antara 0 dan 65535 (kecuali untuk bagian pertama, yang tidak boleh 0).

Saat memilih paket UWP dari pengiriman yang Anda terbitkan, Microsoft Store akan selalu menggunakan paket versi tertinggi yang berlaku untuk perangkat Windows 10 atau Windows 11 pelanggan. Ini memberi Anda fleksibilitas yang lebih besar dan menempatkan Anda dalam kontrol atas paket mana yang akan diberikan kepada pelanggan pada jenis perangkat tertentu. Yang penting, Anda dapat mengirimkan paket ini dalam urutan apa pun; Anda tidak terbatas pada penyediaan paket versi yang lebih tinggi dengan setiap pengiriman berikutnya.

Anda dapat menyediakan beberapa paket UWP dengan nomor versi yang sama. Namun, paket yang berbagi nomor versi juga tidak dapat memiliki arsitektur yang sama, karena identitas lengkap yang digunakan Store untuk setiap paket Anda harus unik. Untuk informasi selengkapnya, lihat Identitas.

Ketika Anda menyediakan beberapa paket UWP yang menggunakan nomor versi yang sama, arsitektur (dalam urutan x64, x86, Arm, netral) akan digunakan untuk memutuskan mana yang memiliki peringkat yang lebih tinggi (ketika Store menentukan paket mana yang akan disediakan untuk perangkat pelanggan). Saat memberi peringkat bundel aplikasi yang menggunakan nomor versi yang sama, peringkat arsitektur tertinggi dalam bundel dipertimbangkan: bundel aplikasi yang berisi paket x64 akan memiliki peringkat yang lebih tinggi dari yang hanya berisi paket x86.

Ini memberi Anda banyak fleksibilitas untuk mengembangkan aplikasi Anda dari waktu ke waktu. Anda dapat mengunggah dan mengirimkan paket baru yang menggunakan nomor versi yang lebih rendah untuk menambahkan dukungan untuk perangkat Windows 10 atau Windows 11 yang sebelumnya tidak Anda dukung, Anda dapat menambahkan paket versi lebih tinggi yang memiliki dependensi lebih ketat untuk memanfaatkan fitur perangkat keras atau OS, atau Anda dapat menambahkan paket versi lebih tinggi yang berfungsi sebagai pembaruan untuk beberapa atau semua basis pelanggan yang ada.

Contoh berikut menggambarkan bagaimana penomoran versi dapat dikelola untuk mengirimkan paket yang dimaksudkan kepada pelanggan Anda melalui beberapa pengiriman.

Contoh: Pindah ke satu paket melalui beberapa pengiriman

Windows 10 memungkinkan Anda menulis basis kode tunggal yang berjalan di mana-mana. Ini membuat memulai proyek lintas platform baru jauh lebih mudah. Namun, karena sejumlah alasan, Anda mungkin tidak ingin menggabungkan basis kode yang ada untuk segera membuat satu proyek.

Anda dapat menggunakan aturan penerapan versi paket untuk memindahkan pelanggan Anda secara bertahap ke satu paket untuk keluarga perangkat Universal, sambil mengirimkan sejumlah pembaruan sementara untuk keluarga perangkat tertentu (termasuk yang memanfaatkan API Windows 10). Contoh di bawah ini menggambarkan bagaimana aturan yang sama diterapkan secara konsisten melalui serangkaian pengiriman untuk aplikasi yang sama.

Penyerahan Konten Pengalaman pelanggan
1 - Versi paket: 1.1.10.0
- Keluarga perangkat: Windows.Desktop, minVersion 10.0.10240.0
- Perangkat pada Windows 10 dan 11 Desktop build 10.0.10240.0 ke atas akan mendapatkan 1.1.10.0
- Keluarga perangkat lain tidak akan dapat membeli dan menginstal aplikasi
2 - Versi paket: 1.1.10.0
- Keluarga perangkat: Windows.Desktop, minVersion 10.0.10240.0

- Versi paket: 1.0.0.0
- Keluarga perangkat: Windows.Universal, minVersion 10.0.10240.0
- Perangkat pada Windows 10 dan 11 Desktop build 10.0.10240.0 ke atas akan mendapatkan 1.1.10.0
- Keluarga perangkat (non-desktop) lainnya ketika diperkenalkan akan mendapatkan 1.0.0.0
- Perangkat desktop yang sudah menginstal aplikasi tidak akan melihat pembaruan apa pun (karena mereka sudah memiliki versi terbaik yang tersedia 1.1.10.0 dan lebih tinggi dari 1.0.0.0)
3 - Versi paket: 1.1.10.0
- Keluarga perangkat: Windows.Desktop, minVersion 10.0.10240.0

- Versi paket: 1.1.5.0
- Keluarga perangkat: Windows.Universal, minVersion 10.0.10250.0

- Versi paket: 1.0.0.0
- Keluarga perangkat: Windows.Universal, minVersion 10.0.10240.0
- Perangkat pada Windows 10 dan 11 Desktop build 10.0.10240.0 ke atas akan mendapatkan 1.1.10.0
- Keluarga perangkat (non-desktop) lainnya ketika diperkenalkan dengan build 10.0.10250.0 ke atas akan mendapatkan 1.1.5.0
- Famile perangkat (non-desktop) lainnya saat diperkenalkan dengan build >=10.0.10240.0 dan < 10.010250.0 akan mendapatkan 1.1.0.0
- Perangkat desktop yang sudah menginstal aplikasi tidak akan melihat pembaruan apa pun (karena mereka sudah memiliki versi terbaik yang tersedia 1.1.10.0 yang lebih tinggi dari 1.1.5.0 dan 1.0.0.0)
4 - Versi paket: 2.0.0.0
- Keluarga perangkat: Windows.Universal, minVersion 10.0.10240.0
- Semua pelanggan di semua keluarga perangkat pada Windows 10 dan 11 build v10.0.10240.0 ke atas akan mendapatkan paket 2.0.0.0

Catatan

 Dalam semua kasus, perangkat pelanggan akan menerima paket yang memiliki nomor versi tertinggi yang memenuhi syarat. Misalnya, pada pengiriman ketiga di atas, semua perangkat desktop akan mendapatkan v1.1.10.0, bahkan jika mereka memiliki OS versi 10.0.10250.0 atau yang lebih baru dan dengan demikian juga dapat menerima v1.1.5.0. Karena 1.1.10.0 adalah nomor versi tertinggi yang tersedia untuk mereka, yaitu paket yang akan mereka dapatkan.

Menggunakan penomoran versi untuk mengembalikan ke paket yang dikirim sebelumnya untuk akuisisi baru

Jika menyimpan salinan paket, Anda akan memiliki opsi untuk mengembalikan paket aplikasi di Store ke paket Windows 10 sebelumnya jika Anda harus menemukan masalah dengan rilis. Ini adalah cara sementara untuk membatasi gangguan pada pelanggan Anda saat Anda meluangkan waktu untuk memperbaiki masalah.

Untuk melakukan ini, buat pengiriman baru. Hapus paket bermasalah dan unggah paket lama yang ingin Anda sediakan di Store. Pelanggan yang telah menerima paket yang Anda gulung balik masih akan memiliki paket yang bermasalah (karena paket lama Anda akan memiliki nomor versi yang lebih lama). Tetapi ini akan menghentikan orang lain untuk memperoleh paket yang bermasalah, sambil memungkinkan aplikasi masih tersedia di Toko.

Untuk memperbaiki masalah bagi pelanggan yang telah menerima paket bermasalah, Anda dapat mengirimkan paket Windows 10 baru yang memiliki nomor versi yang lebih tinggi daripada paket buruk sesegera mungkin. Setelah pengiriman itu melalui proses sertifikasi, semua pelanggan akan diperbarui ke paket baru, karena akan memiliki nomor versi yang lebih tinggi.

Bahasa yang didukung

Anda dapat mengirimkan aplikasi ke Microsoft Store dalam lebih dari 100 bahasa.

Untuk mempelajari selengkapnya tentang mengonfigurasi bahasa di aplikasi Anda, lihat Globalisasi dan pelokalan dan Memahami bahasa profil pengguna dan bahasa manifes aplikasi. Kami juga memiliki Toolkit Aplikasi Multibahasa untuk membantu Anda menulis aplikasi yang mendukung beberapa bahasa.

Daftar bahasa yang didukung

Ini adalah bahasa yang didukung Microsoft Store. Aplikasi Anda harus mendukung setidaknya salah satu bahasa ini.

Kode bahasa yang tidak disertakan di sini tidak didukung oleh Store. Kami menyarankan agar Anda tidak menyertakan paket yang menargetkan kode bahasa selain yang tercantum di bawah ini; paket tersebut tidak akan didistribusikan kepada pelanggan, dan dapat menyebabkan keterlambatan atau kegagalan dalam sertifikasi.

Nama bahasa Kode bahasa yang didukung
Arab ar, ar-sa, ar-ae, ar-bh, ar-dz, ar-eg, ar-iq, ar-jo, ar-kw, ar-lb, ar-ly, ar-ma, ar-om, ar-qa, ar-sy, ar-tn, ar-ye
Afrika af, af-za
Albania sq, sq-al
Amharik am, am-et
Armenia hy, hy-am
Assam sebagai, as-in
Azerbaijani az-arab, az-arab-az, az-cyrl, az-cyrl-az, az-latn, az-latn-az
Basque (Basque) eu, eu-es
Belarusia be, be-by
Bengali bn, bn-bd, bn-in
Bosnia bs, bs-cyrl, bs-cyrl-ba, bs-latn, bs-latn-ba
Bulgaria bg, bg-bg
Katalan ca, ca-es, ca-es-valencia
Cherokee chr-cher, chr-cher-us, chr-latn
Tionghoa (Aksara Sederhana) zh-Hans, zh-cn, zh-hans-cn, zh-sg, zh-hans-sg
Tionghoa (Aksara Tradisional) zh-Hant, zh-hk, zh-mo, zh-tw, zh-hant-hk, zh-hant-mo, zh-hant-tw
Kroasia jam, jam-jam, hr-ba
Cheska cs, cs-cz
Dansk da, da-dk
Dari prs, prs-af, prs-arab
Belanda nl, nl-nl, nl-be
Inggris en, en-au, en-ca, en-gb, en-ie, en-in, en-nz, en-sg, en-us, en-za, en-bz, en-hk, en-id, en-jm, en-kz, en-mt, en-my, en-ph, en-pk, en-tt, en-vn, en-zw, en-053, en-021, en-029, en-011, en-018, en-014
Esti et, et-ee
Filipino fil, fil-latn, fil-ph
Suomi fi, fi-fi
Prancis fr, fr-be , fr-ca , fr-ch , fr-fr, fr-lu, fr-015, fr-cd, fr-ci, fr-cm, fr-ht, fr-ma, fr-mc, fr-ml, fr-re, frc-latn, frp-latn, fr-155, fr-029, fr-021, fr-011
Galisia gl, gl-es
Georgia ka, ka-ge
Jerman de, de-at, de-ch, de-de, de-lu, de-li
Yunani el, el-gr
Gujarat gu, gu-in
Hausa ha, ha-latn, ha-latn-ng
Ibrani dia, he-il
Hindi hai, hi-in
Hungaria hu, hu-hu
Islandia adalah, is-is
Igbo ig-latn, ig-ng
Indonesia id, id-id
Inuktitut (Latin) iu-cans, iu-latn, iu-latn-ca
Irlandia ga, ga-ie
isiXhosa xh, xh-za
isiZulu zu, zu-za
Italia itu, it-it, it-ch
Jepang ja , ja-jp
Kannada kn, kn-in
Kazakh kk, kk-kz
Khmer km, km-kh
K'iche' quc-latn, qut-gt, qut-latn
Kinyarwanda rw, rw-rw
Kiswahili sw, sw-ke
Konkani kok, kok-in
Korea ko, ko-kr
Kurdi ku-arab, ku-arab-iq
Kyrgyz ky-kg, ky-cyrl
Laos lo, lo-la
Latvi lv, lv-lv
Lituavi lt, lt-lt
Luksemburg lb, lb-lu
Makedonia mk, mk-mk
Melayu ms, ms-bn, ms-my
Malayalam ml, ml-in
Malta mt, mt-mt
Maori mi, mi-latn, mi-nz
Marathi mr, mr-in
Bahasa Mongolia (Sirilik) mn-cyrl, mn-mong, mn-mn, mn-phag
Nepal ne, ne-np
Norwegia nb, nb-no, nn, nn-no, no, no-no,
Odia atau, atau
Farsi fa, fa-ir
Polski pl, pl-pl
Portugis (Brasil) pt-br
Portugis (Portugal) pt, pt-pt
Punjabi pa, pa-arab, pa-arab-pk, pa-deva, pa-in
Quechua quz, quz-bo, quz-ec, quz-pe
Rumania ro, ro-ro
Rusia ru , ru-ru
Gaelik Skotlandia gd-gb, gd-latn
Serbia (Latin) sr-Latn, sr-latn-cs, sr, sr-latn-ba, sr-latn-me, sr-latn-rs
Serbia (Sirilik) sr-cyrl, sr-cyrl-ba, sr-cyrl-cs, sr-cyrl-me, sr-cyrl-rs
Sesotho sa Leboa nso, nso-za
Setswana tn, tn-bw, tn-za
Sindhi sd-arab, sd-arab-pk, sd-deva
Sinhala si, si-lk
Slovak sk, sk-sk
Sloven sl, sl-si
Spanyol es, es-cl, es-co, es-es, es-mx, es-ar, es-bo, es-cr, es-do, es-ec, es-gt, es-hn, es-ni, es-pa, es-pe, es-pr, es-py, es-sv, es-us, es-uy, es-ve, es-019, es-419
Swedia sv, sv-se, sv-fi
Tajik (Sirilik) tg-arab, tg-cyrl, tg-cyrl-tj, tg-latn
Tamil ta, ta-in
Tatar tt-arab, tt-cyrl, tt-latn, tt-ru
Telugu te, te-in
Thailand th, th-th
Tigrinya ti, ti-et
Turki tr, tr-tr
Turkmen tk-cyrl, tk-latn, tk-tm, tk-latn-tr, tk-cyrl-tr
Ukraina uk, uk-ua
Urdu Anda, your-pk
Uyghur ug-arab, ug-cn, ug-cyrl, ug-latn
Uzbek (Latin) uz, uz-cyrl, uz-latn, uz-latn-uz
Vietnam vi, vi-vn
Wales cy, cy-gb
Wolof wo, wo-sn
Yoruba yo-latn, yo-ng