为通用 Windows 平台导出

参见

这个页面描述的是如何将 Godot 项目导出到 UWP。如果你想要找的是从源码编译编辑器或导出模板二进制文件,请阅读 为通用 Windows 平台编译

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

但是, 如果要安装并运行应用程序, 则需要使用可信签名对其进行签名. 目前,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

设置好编辑器选项之后,转到“项目 > 导出”,然后选择 UWP 预设。点击在 Signing 选项的下面 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进行安装.

备注

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