一般套件組合應用程式套件

重要

如果您想要提交應用程式至 Microsoft Store,您需要連絡Windows 開發人員支援,以取得使用一般套件組合的核准。

一般套件組合是一種改進應用程式套件檔案的改進方式。 一般的 Windows 應用程式套件組合檔案會使用多層封裝結構,其中應用程式套件檔案必須包含在組合內,而一般組合則只會參考應用程式套件檔案來移除這項需求,讓它們可以在應用程式套件組合之外。 由於應用程式套件檔案不再包含在套件組合中,因此可以平行處理,這樣會減少上傳時間、更快速的發佈 (,因為每個應用程式套件檔案都可以同時) ,而且最終的開發反復專案會更快速地處理。

一般套件組合圖表

一般套件組合的另一個優點是建立較少的套件。 因為只參考應用程式套件檔案,所以如果封裝未在兩個版本之間變更,則兩個版本的應用程式可以參考相同的套件檔案。 為應用程式的下一個版本建置套件時,這可讓您只建立已變更的應用程式套件。 根據預設,一般套件組合會在與本身相同的資料夾中參考應用程式套件檔案。 不過,這個參考可以變更為其他路徑(相對路徑、網路共用資料夾和 http 位置)。 若要這樣做,您必須在一般套件組合建立期間直接提供BundleManifest

如何建立一般套件組合

可透過使用 MakeAppx.exe 工具,或透過使用封裝配置來定義套件組合結構,建立一般套件組合。

使用 MakeAppx.exe

若要使用 MakeAppx.exe 建立一般套件組合,請像平常一樣使用「MakeAppx.exe 配套」命令,但使用/fb 參數來產生「一般應用程式套件組合」檔案 (這會非常小,因為它只會參考應用程式套件檔案,且不包含任何實際的承載) 。

以下是命令語法的範例:

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

如需有關使用 MakeAppx.exe 的詳細資訊,請參閱使用 MakeAppx.exe 工具建立應用程式套件

使用封裝配置

或者,您可以使用封裝配置來建立一般套件組合。 若要這樣做,請將應用程式套件組合資訊清單的PackageFamily元素中的FlatBundle屬性設定為true。 若要深入了解封裝配置,請查看使用封裝配置的套件建立

如何部署一般套件組合

在可以部署一般套件組合之前,除了應用) 程式套件組合之外,每個應用程式套件 (都必須使用相同的憑證進行簽署。 這是因為所有的應用程式套件檔案 ( .appx/. msix) 現在都是獨立的檔案,而且不再包含在應用程式套件組合內 ( .appxbundle/. msixbundle) 檔。

簽署套件之後,您可以透過下列其中一個選項來安裝應用程式:

  • 按兩下應用程式套件組合檔案,以應用程式安裝程式安裝。
  • 使用 PowerShell 中的 add-appxpackage 指令程式,並指向應用程式套件組合檔案 (假設應用程式封裝是應用程式套件組合預期要) 的位置。

您無法自行部署一般套件組合的個別 .appx/. msix 封裝。 它們必須透過 .appxbundle/. msixbundle 進行部署。 不過,您可以在初始安裝後更新一般套件組合的個別 .appx/. msix 封裝。 如果您要更新個別的 .appx/. msix 套件,也需要更新一般套件組合的資訊清單。

例如,如果您的 v1 一般套件組合是由 msixbundle、x86. msix、msix 和 msix 所組成,且您知道 v2 配套套件組合只有資產套件的變更,則您只需要建立. msixbundle 和資產。 msix 就能安裝更新。 您必須建立 v2 的 msixbundle,因為組合會持續追蹤其 msix 封裝的所有版本。 藉由上下加減一點 msix 至 v2 的版本,您需要新的 msixbundle,其中包含這個新的參考。 Msixbundle 可以包含 v1 x86. msix 和 x64. msix 的參考。一般套件組合的 msix 套件不需要有相同的版本號碼。