使用 Visual Studio 发布适用于 Windows 的 .NET MAUI 应用

本文介绍如何使用 Visual Studio 发布适用于 Windows 的 .NET MAUI 应用。 .NET MAUI 应用可以打包到 MSIX 包中,用于在 Windows 中安装或提交到 Microsoft Store。 要详细了解 MSIX 的优点,请参阅什么是 MSIX?

设置生成目标

在 Visual Studio 中,一次只能发布到一个平台。 使用 Visual Studio 工具栏中的“调试目标”下拉列表选择目标平台。 将目标设置为“Windows 计算机”或“框架”>“net8.0-windows”,如下图所示

Selecting the Windows debug target for a .NET MAUI app in Visual Studio.

发布项目

将生成目标设置为 Windows 后,即可以发布项目。 执行以下步骤:

  1. 在“解决方案资源管理器”窗格中,右键单击该项目并选择“发布”

    Right-click on a project file and select publish in Visual Studio

  2. 在“创建应用包”对话框中,选择“旁加载”,然后选择“下一步”

    The sideloading option selected on Create App Packages dialog box in Visual Studio to publish a .NET MAUI app.

    “启用自动更新”复选框为可选项

  3. 在“选择签名方法”对话框中,选择“是,选择证书”。 可以从各种源中选择证书。 本文将创建一个用于测试的临时自签名证书。

    Package signing method dialog in Visual Studio.

    1. 选择“创建”

      可以创建一个用于测试的临时自签名证书。 此证书不应用于分发应用包,应仅用于测试应用的安装过程。

    2. 在“创建自签名测试证书”对话框中,输入用于表示应用发布者的公司名称。 接下来,键入证书密码,然后在“确认密码”框中输入相同的密码

      Create a self-signed test certificate in Visual Studio

    3. 选择“确定”以返回到上一个对话框

    选择证书后,应会看到证书信息显示在对话框中。 选择“下一步”按钮以移至下一个对话框

  4. 在“选择和配置包”对话框中,可以选择应用包的版本,或将其保留为默认值 0.0.0.0。 “自动递增”复选框决定每次发布包时包的版本是否增加。

    选择“发布配置文件”下拉列表,然后选择“<新建...>”

    Showing the New publishing profile item in Visual Studio.

    1. 在“创建新的 MSIX 发布配置文件”对话框中,默认选项应为所需选项。

      Creating a new publishing profile in Visual Studio.

    2. 选择“确定”以返回到上一个对话框

    现已选择你创建的发布配置文件。

    Showing the New publishing profile item with a publish profile selected, in Visual Studio.

  5. 如果选择了为包启用自动更新的选项,请选择“下一步”按钮。 如果未选择自动更新,则会显示“创建”按钮,选择该按钮并跳过下一步。

  6. 显示的下一个对话框是“配置更新设置”对话框。 可以在其中配置应用的安装程序位置,以及应用检查更新的频率。

    每当发布应用的更新版本时,它会覆盖“安装程序位置”处应用的旧版本。 当用户运行应用时,根据应用检查更新的频率,应用会检查此位置以查找是否有更新版本,如果找到了,则会安装它。

    The configure update settings dialog box in Visual Studio.

    选择“安装程序位置”后,选择“创建”

  7. 按“创建”后,则会创建安装程序并显示“包创建完成”对话框,其中汇总了包

    The finished creating a package dialog in Visual Studio.

    可以通过两个选项关闭对话框。 如果有“复制并关闭”按钮,请选择该按钮,将包复制到在“配置更新设置”步骤中选择的安装程序位置。 否则,请选择“关闭”以关闭对话框

当前限制

以下列表描述了发布和打包的当前限制:

  • 如果尝试直接使用发布文件夹中的可执行文件运行已发布的应用,则该应用将无法运行。
  • 运行应用的方法是首先通过打包的 MSIX 文件进行安装