# 把 Godot 游戏移植到 iOS

> 引擎这一侧很熟悉，因为 Summer Engine 兼容 Godot 4。iOS 那一侧是苹果的手续、签名和触摸设计。

- URL: https://www.summerengine.com/zh/port-godot-game-to-ios
- Keyword: 移植 Godot 游戏到 iOS
- Related: https://www.summerengine.com/zh/porting

通过 Summer Engine 把 Godot 游戏带到 iOS，意思是在一个兼容 Godot 4 的引擎里重建一款你拥有的游戏，然后通过 App Store Connect 发布。重建很短。让人意外的是苹果那条流水线。

从 Godot 过来的开发者在 iOS 上通常撞同样的三堵墙：导出模板与签名、从未设计过的触摸操作，以及因元数据而不是代码被拒。这些都不是引擎问题，所以清单比移植本身更重要。

Summer Engine 跟随 Godot 上游，是带有超过一百万行自定义代码的完全自研引擎。它目前导出桌面版本，iOS 版本需要装有 Xcode 的 Mac、签名，还要针对触控输入做一轮适配。C++ 和 GDScript 都能迁移过来，C# 可在桌面编辑器中使用，不过在 Godot 4 工作流中，C# 在 iOS 上仍属实验性。

## 苹果流水线，一步一步来

以每年 99 美元加入 Apple Developer Program。在一台 Mac 上安装 Xcode。创建 App ID、分发证书和 App Store 描述文件。导出 iOS 构建，打开生成的 Xcode 项目，设置包标识符和签名团队，然后归档并上传到 App Store Connect。通过 TestFlight 在真机上测试。补齐截图、描述、年龄分级、隐私政策网址和隐私清单后提交审核。

## 为键盘设计的游戏要怎么做触摸操作

多数 Godot 项目从桌面和键盘输入起步。在 iOS 上，把操作映射到手势，而不是在屏幕上画一个手柄。点按、长按、滑动和拖拽能覆盖多数设计。把可交互目标保持在至少 44 点宽，让手指离开玩家需要看清的那部分屏幕，并尊重安全区内边距。把手柄支持当作额外路径，而不是必需路径。

## 需要在代码里处理的设备行为

处理应用挂起：在失焦时保存，这样来电或锁屏永远不会让进度丢失。干净地处理音频中断与恢复。把 UI 锚定到安全区，以支持多种画面比例和刘海。盯住内存，因为 iOS 会终止超出预算的应用。测量几分钟内的持续帧率来捕捉热降频，而不是只看前三十秒。

## 常见的被拒原因

被拒通常来自商店页面，而不是构建。截图和游戏对不上、隐私政策链接返回错误、数据收集声明不完整、构建里能看到占位内容，或者数字购买绕开了苹果的应用内购买。提交前把这些修好，多数游戏第一次或第二次就能过。

## FAQ

### 把 Godot 风格的项目导到 iOS 需要 Mac 吗？

需要。签名和上传都要用 Xcode，而它只在 macOS 上运行。租用或远程的 Mac 用于最后的构建步骤也可以。

### Summer Engine 是 Godot 的分支吗？

不是。它兼容 Godot 4 并始终跟随 Godot 上游，同时是带有超过一百万行自定义代码的完全自研引擎。

### iOS 构建能用 C# 吗？

在 Godot 4 工作流中，C# 在 iOS 上仍属实验性，所以 iOS 版本用 GDScript 或 C++ 更稳妥。C# 可在桌面编辑器中使用。

### 把游戏放上 App Store 要花多少钱？

Apple Developer Program 每年 99 美元，再加上苹果对销售的抽成。Summer Engine 不收任何分成。

### 同一个项目也能发到 Android 和 Steam 吗？

Steam 可以，因为 Summer 能从同一个项目导出桌面版本。Android 需要 Android SDK 和用于签名的密钥库。每个商店都需要自己的签名、元数据和输入调整，但游戏本身留在同一个地方。

[开始重建](https://www.summerengine.com/zh/download)

---

## Machine-readable resources

- Site index for agents: https://www.summerengine.com/llms.txt
- Full inlined content: https://www.summerengine.com/llms-full.txt
- Porting catalog: https://www.summerengine.com/llms-porting.txt
- Structured catalog: https://www.summerengine.com/agent-catalog.json
- Sitemap: https://www.summerengine.com/sitemap.xml
- Developer resources: https://www.summerengine.com/docs
- Summer API (assets from any agent or code; public per-call model prices): https://docs.summerengine.com/api