为 iOS 导出

参见

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

这些是在Xcode中加载Godot项目的步骤. 这允许你构建和部署到iOS设备, 为App Store构建一个发行版本, 并执行你通常可以使用Xcode执行的所有其他操作.

注意

从Godot 4.2开始,用C#编写的项目可以导出到iOS,但支持是实验性的,并且:ref:一些限制适用于<doc_C_sharp_platforms>。

需求

  • 你必须从运行安装了 Xcode 的 mac OS的计算机中为 iOS 导出。

  • 下载 Godot 导出模板。请使用 Godot 菜单:编辑器 > 管理导出模板

将 Godot 项目导出到 Xcode

在 Godot 编辑器中,从项目菜单打开导出窗口。导出窗口打开后,点击添加.. 并选择 iOS

应用分类中的 App Store 团队 ID 和(捆绑包)标识符选项都是必填的。留空时导出器会报错。

备注

如果你在导出过程中遇到类似以下错误

“JSON文字未以数组或物件开头,且未设定允许片段的选项”

那么可能是由于**App Store团队ID**格式错误!

导出器需要一个(10个字元长)代码,例如“ABCDE12XYZ”,而不是例如Xcode喜欢在“签章和功能”标签中显示的你的姓名。

你可以在右上角你姓名旁的「developer.apple.com <https://developer.apple.com/account/resources/certificates/list>」找到代码。

点击导出项目后,仍有两个重要选项:

  • 路径是一个空文件夹,它将包含导出的 Xcode 项目文件。

  • 文件将是 Xcode 项目的名称和几个项目特定的文件和目录。

../../_images/ios_export_file.png

备注

本教程使用 exported_xcode_project_name , 但你将使用你的项目的名称. 当你在以下步骤中看到 exported_xcode_project_name 时, 请将其替换为你使用的名称.

备注

选择 exported_xcode_project_name 时, 避免使用空格, 因为这可能会导致XCode项目文件错误.

导出完成后, 输出文件夹应如下所示:

../../_images/ios_export_output.png

打开 exported_xcode_project_name.xcodeproj 可让你像任何其他iOS应用程序一样构建和部署.

积极的发展考虑

上面的方法创建了一个可以为发布而构建的导出项目, 但每次在Godot中进行更改时, 都必须重新导出.

在开发过程中, 你可以通过将Godot项目文件直接链接到你的应用程序, 来加快此过程.

在以下示例中:

  • exported_xcode_project_name 是导出的iOS应用程序的名称(如上所示).

  • godot_project_to_export 是Godot项目的名称.

备注

godot_project_to_exportexported_xcode_project_name 必须不一样, 以免Xcode出现签名问题.

将 Godot 项目文件夹链接到 Xcode 的步骤

  1. 从一个导出的iOS项目开始(按照上述步骤).

  2. 在Finder中, 将Godot项目文件夹拖到Xcode文件浏览器中.

../../_images/ios_export_add_dir.png

3. In the dialog, make sure Create folder references is selected. This means you will be able to continue to edit your Godot project in its current location.

../../_images/ios_export_file_ref.png

  1. 请参阅Xcode文件浏览器中的 godot_project_to_export 文件夹.

  2. 从Xcode项目中删除 exported_xcode_project_name.pck .

../../_images/ios_export_delete_pck.png

6. Open exported_xcode_project_name-Info.plist and add a string property named godot_path (this is the real key name) with a value godot_project_to_export (this is the name of your project)

../../_images/ios_export_set_path.png

就这样!你现在可以在Godot编辑器中编辑项目;并在想要在设备上运行时, 在Xcode中构建它.

iOS 的插件

在 Godot 中可以使用特殊的 iOS 插件。请查看 iOS 的插件 页面。

环境变量

你可以使用以下环境变量在编辑器外部设置导出选项。在导出过程中,这些值会覆盖你在导出菜单中设置的值。

iOS 导出环境变量

导出选项

环境变量

加密 / 密钥

GODOT_SCRIPT_ENCRYPTION_KEY

选项/应用程序/设定档UUID调试

GODOT_IOS_PROVISIONING_PROFILE_UUID_DEBUG

选项/应用程序/设定档UUID发布

GODOT_IOS_PROVISIONING_PROFILE_UUID_RELEASE

故障排除

xcode-select 指向错误的SDK位置

xcode select是xcode附带的一个工具,除其他外,它指向Mac上的iOS SDK。如果你安装了Xcode,打开了它,同意了许可协议,并安装了命令行工具,Xcode select应该指向iPhone SDK的正确位置。如果不这样做,Godot将无法导出到iOS,并出现如下错误:

  1. MSB3073: The command ""clang" <LOTS OF PATHS AND COMMAND LINE ARGUMENTS HERE>
  2. "/Library/Developer/CommandLineTools/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk"" exited with code 1.

在这种情况下,Godot试图在`/Library/Developer/CommandLineTools/``文件夹中找到包含iPhone SDK的`Platforms’文件夹,但含有iPhone SDK的` Platforms’文件夹实际上位于/Applications/Xcode.app/Contents/Developer`下。要验证这一点,可以打开“终端”并运行以下命令来查看xcode选择点的位置:

  1. xcode-select -p

要修复xcode select指向错误的位置,请在终端中输入以下命令:

  1. sudo xcode-select -switch /Applications/Xcode.app

运行此命令后,Godot应该能够成功导出到iOS。