使用 Unity 构建 iOS 应用程序的过程包含两个主要步骤:
有关 Unity 如何构建 iOS 应用程序的更多信息,请参阅 Unity 如何构建 iOS 应用程序。
注意:要在本地构建 iOS 应用程序,开发机器必须运行 macOS,因为 Xcode 仅在 macOS 设备上可用。如果没有 macOS 设备,可以使用 Unity Build Automation 在云端构建应用程序。
在构建 iOS 项目之前,请确保在 iOS 的 播放器设置 (Player Settings) 中设置了 Bundle Identifier(菜单编辑 (Edit) > 项目设置 (Project Settings) > 播放器设置 (Player Settings))。您还可以选择应用程序的目标是模拟器还是实际设备。为此,请更改 SDK version 字段。
为 iOS 构建 Xcode 项目,请按照以下步骤操作:
提示:首次指定目标目录后,可以使用快捷键 Cmd+B 来构建和运行应用程序。Unity 使用附加 (Append) 模式重新生成 Xcode 项目。
有关在 Xcode 中运行 Xcode 项目的更多信息,请参阅构建和运行应用 (Apple Developer)。
如果在已包含另一个 Xcode 项目的目录中构建项目,Unity 会显示警报和关于如何继续的选择。有两个选项:
Data 和 Libraries 子目录中的所有文件。然后,它会用新生成的 Xcode 项目内容填充这些目录。根据最新的 Unity 项目更改更新 Xcode 项目文件。只有使用相同 Unity iOS 版本生成的现有 XCode 项目才支持附加模式。您可以将自定义内置代码存储在 classes 子目录中,因为此处的文件不会被删除。Unity 生成 Xcode 项目后,可以通过命令行构建和运行 Xcode 项目。操作步骤如下:
<device-id> 是设备 ID。unity$ xcodebuild test -destination "platform=iOS,id=<device-id>" -scheme Unity-iPhone
使用命令行参数指定构建设置时,这些参数将应用于 Xcode 项目中的所有目标。为了避免这种情况,某些构建设置提供了后缀版本,可用于指定目标。您可以通过 Xcode > 构建设置 (Build Settings) 中的 User-Defined 设置来实现这一点。APP 后缀用于应用程序目标,FRAMEWORK 后缀用于框架目标。
使用 xcodebuild 进行构建时,请将后缀版本用于以下构建设置:
| Xcode 构建设置 | 后缀版本 |
|---|---|
| PRODUCT_NAME | PRODUCT_NAME_APP |
| PROVISIONING_PROFILE | PROVISIONING_PROFILE_APP |
| PROVISIONING_PROFILE_SPECIFIER | PROVISIONING_PROFILE_SPECIFIER_APP |
| OTHER_LDFLAGS | OTHER_LDFLAGS_FRAMEWORK |
根据您的自定义构建管线,您可以扩展此列表以涵盖其他设置。