Search code examples
windowsuwppackagingwinui-3

Packaging Multiple UWP applications into 1 container with Microsoft Store


I'd like to bundle multiple launchable UWP apps into 1 single container for sharing the local data.

We can think it of as

  • App 1
  • App 2

which will share the same LocalState folder, but they will have their own application registry and they'll be able to be launched individually.

Things I've thought about to make it happen:

  • There is Applications schema but I don't think Microsoft Store allows packages that has 2 separate apps.
  • There is Optional package approach, but this is mainly for splitting the app into smaller pieces and Optional Package can't be a separate executable from the main package.
  • There is App Extensions approach, which I think can serve as a shared state for multiple separate applications, but it'll be really hard to manage large amount of state (like a database) between two apps + it's not really designed for this purpose.

Switching to WinAppSDK for making an application bundle and side loading is not an option for me.

Is there any other way to make it happen other than the provided approaches above?


Solution

  • Looks like only way to achieve shared data between two apps is to have them use publisherCacheFolders

    If you own both applications they can share data using specified folders in the manifest.

    Also one note, this extension must be defined under "Package" tag instead of "Application" in the manifest. Otherwise you'll get invalid schema errors during AppxManifest generation and your builds won't complete.