diff --git a/msix-src/app-package-updates.md b/msix-src/app-package-updates.md index bbe950dd..0a9c5c5d 100644 --- a/msix-src/app-package-updates.md +++ b/msix-src/app-package-updates.md @@ -1,7 +1,7 @@ --- title: App package updates description: Describes how MSIX packages are optimized to ensure that only the essential changed bits of the app are downloaded to update an existing Windows app. -ms.date: 11/30/2020 +ms.date: 08/25/2026 ms.topic: article keywords: windows 10, uwp, app package, app update, msix, appx, pfan, package family name ms.custom: "RS5, seodec18" @@ -59,7 +59,14 @@ The update package to the currently installed app package can be of a different For example: If you have x86 version of MyFavApp(v1.0.0.0) installed on a x64 Windows 10 device and the update package(v2.0.0.0) is x64 version: MyFavApp(1.0.0.0) will be updated to MyFavApp(v2.0.0.0) successfully. #### Packages can update from an MSIX to an MSIXbundle -An update package can go from MSIX package to an MSIXbundle package but not vice-versa. When an MSIXbundle is installed, the package update will need to remain a bundle. +An update package can go from a standalone `.msix` package to an `.msixbundle` +package for the same package family. + +#### Packages can't update from an MSIXbundle to a standalone MSIX +For the same package family, after a version ships as an `.msixbundle`, later package +updates must remain bundles. A later update can't move from the `.msixbundle` back to +a standalone `.msix` package. The `.msix` to `.msixbundle` transition is supported, +but the reverse transition isn't. ## Optimize differential update technology diff --git a/msix-src/package/bundling-overview.md b/msix-src/package/bundling-overview.md index 5a01abe6..205cf308 100644 --- a/msix-src/package/bundling-overview.md +++ b/msix-src/package/bundling-overview.md @@ -1,7 +1,7 @@ --- title: Bundling MSIX packages -description: An overview of MSIX Bundles -ms.date: 02/05/2020 +description: An overview of MSIX bundles +ms.date: 08/25/2026 ms.topic: concept-article keywords: windows 10, msix ms.custom: "RS5, seodec18" @@ -11,10 +11,33 @@ ms.custom: "RS5, seodec18" ## Overview -An MSIX bundle is made up of multiple MSIX packages and it can reduce the size of the app that users download. App bundles are helpful for different architectures, language-specific assets, varying image-scale assets, or resources that apply to specific devices. By bundling multiple architectures versions of your application into one entity, only the bundle needs to be uploaded to your distribution location (instead of having one for each architecture). The Windows 10 deployment platform is aware of the .msixbundle package type and will only download the files that are applicable to a device's architecture. Keep in mind that if you decide to distribute an .msixbundle for a particular app, you cannot revert back to distributing just an MSIX package. - -If you're [packaging your application in Visual Studio](../package/packaging-uwp-apps.md), the Create Package Wizard gives you a "Generate app bundle" option during package creation. You can set this option to have Visual Studio generate an MSIX bundle for you. -If you're generating MSIX packages using the [MSIX Packaging Tool](../packaging-tool/tool-overview.md) or [MakeAppx.exe](manual-packaging-root.md) you can take advantage of MakeAppx.exe to generate a bundle from individual packages e.g. after generating or converting an x86 and x64 MSIX package of your app you can use the process outlined below to bundle the packages using MakeAppx.exe. +An MSIX bundle is made up of multiple MSIX packages and can reduce the download +size for users. MSIX bundles are helpful for different architectures, language-specific +assets, varying image-scale assets, or resources that apply to specific devices. By +bundling multiple architecture versions of your application into one entity, only the +bundle needs to be uploaded to your distribution location (instead of having one for +each architecture). The Windows 10 deployment platform is aware of the `.msixbundle` +package type and will only download the files that are applicable to a device's +architecture. + +### Bundle and package update constraints + +For the same package family, an MSIX package update can move from a standalone `.msix` +package to an `.msixbundle`. After you ship an `.msixbundle`, plan to keep later +package updates for that package family in the bundle format. A later package update +cannot move from the `.msixbundle` back to a standalone `.msix` package. For more +information, see +[reverse update constraint](../app-package-updates.md#packages-cant-update-from-an-msixbundle-to-a-standalone-msix). + +If you're [packaging your application in Visual Studio](../package/packaging-uwp-apps.md), +the Create Package Wizard gives you a "Generate app bundle" option during package +creation. You can set this option to have Visual Studio generate an MSIX bundle for you. +If you're generating MSIX packages using the +[MSIX Packaging Tool](../packaging-tool/tool-overview.md) or +[MakeAppx.exe](manual-packaging-root.md) you can take advantage of MakeAppx.exe to +generate a bundle from individual packages. For example, after generating or converting +x86 and x64 MSIX packages for your app, you can use the process outlined below to bundle +the packages using MakeAppx.exe.