Paket aplikasi bundel datar

Penting

Jika Anda ingin mengirimkan aplikasi ke Store, Anda perlu menghubungi dukungan pengembang Windows untuk persetujuan menggunakan bundel datar.

Bundel datar adalah cara yang ditingkatkan untuk memaketkan file paket aplikasi Anda. File bundel aplikasi Windows yang khas menggunakan struktur kemasan multi-tingkat di mana file paket aplikasi perlu dimuat dalam bundel, bundel datar menghapus kebutuhan ini hanya dengan merujuk file paket aplikasi, memungkinkannya berada di luar bundel aplikasi. Karena file paket aplikasi tidak lagi terkandung dalam bundel, file tersebut dapat diproses secara paralel, yang menghasilkan pengurangan waktu pengunggahan, penerbitan yang lebih cepat (karena setiap file paket aplikasi dapat diproses pada saat yang sama), dan pada akhirnya iterasi pengembangan yang lebih cepat.

Flat Bundle Diagram

Manfaat lain dari bundel datar adalah kebutuhan untuk membuat lebih sedikit paket. Karena file paket aplikasi hanya dirujuk, dua versi aplikasi dapat mereferensikan file paket yang sama jika paket tidak berubah di dua versi. Ini memungkinkan Anda untuk hanya membuat paket aplikasi yang telah berubah saat membangun paket untuk versi aplikasi Anda berikutnya. Secara default, bundel datar akan mereferensikan file paket aplikasi dalam folder yang sama seperti itu sendiri. Namun, referensi ini dapat diubah ke jalur lain (jalur relatif, berbagi jaringan, dan lokasi http). Untuk melakukan ini, Anda harus langsung menyediakan BundleManifest selama pembuatan bundel datar.

Cara membuat bundel datar

Bundel datar dapat dibuat menggunakan alat MakeAppx.exe, atau dengan menggunakan tata letak kemasan untuk menentukan struktur bundel Anda.

Menggunakan MakeAppx.exe

Untuk membuat bundel datar menggunakan MakeAppx.exe, gunakan perintah "Bundel MakeAppx.exe" seperti biasa tetapi dengan sakelar /fb untuk menghasilkan file bundel aplikasi datar (yang akan sangat kecil karena hanya mereferensikan file paket aplikasi dan tidak berisi payload aktual).

Berikut adalah contoh sintaks perintah:

MakeAppx bundle [options] /d <content directory> /fb /p <output flat bundle name>

Untuk informasi selengkapnya tentang menggunakan MakeAppx.exe, lihat Membuat paket aplikasi dengan alat MakeAppx.exe.

Menggunakan tata letak kemasan

Atau, Anda dapat membuat bundel datar menggunakan tata letak pengemasan. Untuk melakukan ini, atur atribut FlatBundle ke true dalam elemen PackageFamily dari manifes bundel aplikasi Anda. Untuk mempelajari selengkapnya tentang tata letak kemasan, lihat Pembuatan paket dengan tata letak kemasan.

Cara menyebarkan bundel datar

Sebelum bundel datar dapat disebarkan, setiap paket aplikasi (selain bundel aplikasi) harus ditandatangani dengan sertifikat yang sama. Ini karena semua file paket aplikasi (.appx/.msix) sekarang merupakan file independen dan tidak lagi terkandung dalam file app bundle (.appxbundle/.msixbundle).

Setelah paket ditandatangani, Anda dapat menginstal aplikasi melalui salah satu opsi berikut:

  • Klik dua kali file bundel aplikasi untuk diinstal dengan Penginstal Aplikasi.
  • Gunakan cmdlet Add-AppxPackage di PowerShell dan arahkan ke file app bundle (dengan asumsi paket aplikasi adalah tempat app bundle mengharapkannya).

Anda tidak dapat menyebarkan paket .appx/.msix individual dari bundel datar sendiri. Mereka harus disebarkan melalui .appxbundle/.msixbundle. Namun, Anda dapat memperbarui paket .appx/.msix individual dari bundel datar setelah penginstalan awal. Jika Anda memperbarui paket .appx/.msix individual, Anda juga perlu memperbarui manifes bundel datar.

Misalnya, jika bundel datar v1 Anda terdiri dari .msixbundle, x86 .msix, x64 .msix, dan aset .msix, dan Anda tahu bahwa bundel v2 Anda hanya memiliki perubahan pada paket aset, maka Anda hanya perlu membangun .msixbundle dan aset .msix untuk dapat menginstal pembaruan. Anda harus membangun .msixbundle untuk v2 karena bundel melacak semua versi paket .msix-nya. Dengan menabrak versi aset .msix ke v2, Anda memerlukan .msixbundle baru yang memiliki referensi baru ini. .msixbundle v2 dapat berisi referensi ke v1 x86 .msix dan x64 .msix; paket .msix dari bundel datar tidak perlu memiliki nomor versi yang sama.