为通用 Windows 平台导出

导出一个 .appx 包没有额外的要求, 它可以作为Windows应用程序被安装, 或提交到Windows应用商店. 也可以在任何平台上, 而不仅仅是从Windows上, 导出UWP软件包.

但是, 如果要安装并运行应用程序, 则需要使用可信签名对其进行签名. 目前,Godot不支持签名包, 因此您需要使用外部工具来执行此操作.

此外, 请确保导出包时, 设置的发布者名称, 与证书上使用的名称相匹配.

Xbox One 的限制

UWP 文档 中所述:

  • 提交为“App”

    • 可用内存为1GB

    • 共享2-4个CPU核

    • 共享GPU能力(45%)

  • 提交为“游戏”(通过 Xbox Live 创意者计划

    • 可用内存为5GB

    • 4个专用CPU内核和2个共享CPU内核

    • 独享GPU能力(100%)

  • 超过这些内存限制将导致分配失败, 并且应用程序将崩溃.

创建签名证书

这需要Windows SDK附带的 MakeCert.exePvk2Pfx.exe 工具. 如果你使用Visual Studio, 则可以打开其中一个开发者命令提示符, 因为它附带了这些工具, 并且它们可以在路径中定位.

你可以从 Microsoft 的文档.aspx) 获得更详细的说明.

首先,运行 MakeCert 来创建私钥:

  1. MakeCert /n publisherName /r /h 0 /eku "1.3.6.1.5.5.7.3.3,1.3.6.1.4.1.311.10.3.13" /e expirationDate /sv MyKey.pvk MyKey.cer

其中 publisherName 匹配包的发布者名称, expirationDatemm/dd/yyyy 格式.

接下来,使用 Pvk2Pfx.exe 创建个人信息交换(.pfx)文件:

  1. Pvk2Pfx /pvk MyKey.pvk /pi pvkPassword /spc MyKey.cer /pfx MyKey.pfx [/po pfxPassword]

如果未使用 / po 参数指定密码, 则PFX将具有与私钥相同的密码.

你还需要信任此证书才能安装你的应用。以管理员身份打开命令提示符并运行以下命令:

  1. Certutil -addStore TrustedPeople MyKey.cer

设置自动签名

为了导出时自动签名你需要转到 Editor Settings > Export > Uwp. 在这里你需要点击包含 Signtool 的文件夹, 然后导航到电脑上的 SignTool.exe 文件.

../../_images/UWP_sign_tool.png

设置好编辑器选项之后, 转到Project > Export, 然后选择UWP预设. 点击在 Signing 选项的下面 Certificate 旁边的文件夹, 然后转到certificate文件. 接着在密码字段输入pfxPassword.

../../_images/UWP_export_signing.png

现在你的项目将在导出时自动签名.

如果你想手动签名导出的应用, 运行 SignTool.exe 然后使用后面的命令.

SignTool sign /fd SHA256 /a /f MyKey.pfx /p pfxPassword package.appx

安装包

从Windows 10周年更新开始, 只需双击Windows资源管理器中的 .appx 文件即可安装软件包.

也可以使用 Add-AppxPackage PowerShell cmdlet进行安装.

注解

如果要更新已安装的应用程序, 则必须更新新软件包上的版本号或首先卸载以前的软件包.