通过 App Installer 从 Web 错误安装 UWP 应用程序,缺少依赖包

install UWP app by App Installer from web error, dependency package missing

我有一个 UWP 应用程序并尝试通过应用程序安装程序从 Web 安装它。根据 docs 我可以放置 .appx/.appxbundle/*.appinstaller 并且我有一个由 VS 2017 生成的 appxbundle。

当我将 appxbundle(也都是像 Add-AppDev{ackage.resources 和 Dependencies 一样生成的 folder/files)放在我的主机服务器上并尝试 download/install 它时,App Installer 被调用并正确显示我的应用清单信息。

但是在我的客户端机器上安装失败并抱怨“App Installer 无法安装软件包依赖项。向开发人员询问 Microsoft.NET.CoreRuntime.1.1 软件包 ”。它确实在我的开发机器上安装正常,因为我猜我已经安装了所有 sdks。

我尝试将依赖项信息放入我的应用程序安装程序文件中,如下所示,但仍然没有用。

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller 
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2017" 
    Version="1.0.0.0" 
    Uri="http://myhost.com/myapp.appinstaller" > 
    <MainBundle 
        Name="MyApp"
        Publisher="CN=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
        Version="0.0.1"
        Uri="http://myhost.com/myApp.appxbundle" />
<Dependencies>
    <Package Name="Microsoft.NET.CoreRuntime.1.1" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="1.1.25305.1" ProcessorArchitecture="x86" Uri="http://myhost.com/Dependencies/x86/Microsoft.NET.CoreRuntime.1.1.appx" />
    <Package Name="Microsoft.NET.CoreRuntime.1.1" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="1.1.25305.1" ProcessorArchitecture="x64" Uri="http://myhost.com/Dependencies/x64/Microsoft.NET.CoreRuntime.1.1.appx" />
</Dependencies>
</AppInstaller>

谁能告诉我哪里出了问题?

谢谢!

我找到了一个变通办法,就是先将 Microsoft.NET.CoreRuntime.1.1 包用于可选下载,然后再安装我的应用程序。由于某种原因,安装无法自动加载依赖项。我会继续查看 Microsoft 文档,了解是否有关于如何设置 appxinstaller 文件的更多详细信息。

如果您在发布配置(而非调试)下构建您的应用程序,它将从 windows 商店下载所有依赖项,因此您不必为此烦恼。

顺带一提,现在您可以使用 Store -> Create package -> Enable automatic updates 自动生成包含所有依赖项的 .appinstaller 文件 更多信息在这里:docs

我通过执行以下操作克服了同样的挑战:

  1. 右键单击 *.ps1 应该与您的捆绑包位于同一文件夹中的文件

  2. 点击'Run with Powershell'

  3. PowerShell 将开始安装。按照提示进行操作。

然后应用程序安装成功,没有关于缺少 Microsoft.NET.CoreRuntime 包的错误。