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

问题描述

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

但是,通过.appx安装不会允许该应用自动更新。这是一种情况,因为在某些情况下,我需要(通过Add-AppxProvisionedPackage来配置应用程序,以便为给定设备上的所有新用户安装该应用程序。由于Add-AppxProvisionedPackage似乎不支持.appinstaller文件,并且从.appx包本身安装似乎也不支持自动更新,因此我如何配置应用并仍然允许其自动-更新?

一个相关的问题是:是什么导致应用检查网络上的某些appinstaller文件获取更新?那是植入应用程序的东西吗?东西写到注册表?导致应用程序检查更新的信息存放在哪里?

解决方法

但是,通过.appx安装不会允许该应用自动更新。

这是预期的。自动更新功能仅在使用.appinstaller文件安装应用程序时可用,而在直接安装APPX或MSIX时不可用。

来自docs

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

导致应用程序检查更新的信息存放在哪里?

在已安装的软件包中。有一些APIs可用于通过App Installer关联检索有关应用程序的信息。