如何在不首先使用 .appinstaller 文件安装的情况下自动更新侧载 UWP 应用程序

How to auto-update a sideload UWP app without first installing with .appinstaller file

出于各种原因,我有一个 UWP 应用程序是通过侧载(而不是通过应用商店)分发的。此应用程序启用了自动更新,因此有一个托管在网络上的 .appinstaller 文件(以及关联的应用程序包和依赖项)。如果我通过 ms-appinstaller 协议安装,或者通过下载和 运行 .appinstaller 文件,自动更新工作正常。

但是,通过 .appx 安装不允许应用程序自动更新。这是一个场景,因为在某些情况下我需要配置应用程序(通过 Add-AppxProvisionedPackage),以便为给定设备上的任何新用户安装它。由于 Add-AppxProvisionedPackage 似乎不支持 .appinstaller 文件,而且从 .appx 包安装本身似乎不允许自动更新,我如何才能提供应用程序并仍然允许它自动更新-更新?

一个相关的问题是:是什么导致应用程序检查网络上的某些应用程序安装程序文件以获取更新?那是应用程序中内置的东西吗?写入注册表的东西?导致应用程序检查更新的信息存在于何处?

However, installing via the .appx does not allow the app to automatically update.

这是意料之中的。 auto-update 功能仅在使用 .appinstaller 文件安装应用程序时可用,在直接安装 APPX 或 MSIX 时不可用。

来自docs

"必须与您的用户共享应用程序安装程序文件,而不是实际的应用程序容器..."

Where does the information live that causes an app to check for updates?

在安装包中。有一些 APIs 可用于检索有关应用程序安装程序关联的应用程序的信息。