# 把游戏移植到 iOS

> 任何 iOS 发行都需要一台 Mac、一个 Apple Developer 账号、一个签名构建，以及一套用拇指就能玩的设计。这是完整路径。

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

把游戏移植到 iOS，意思是为一款你拥有的游戏构建签名后的 iPhone 和 iPad 版本，并通过 App Store 审核。分发由苹果掌控，所以无论你从哪个引擎过来，流程都是固定的。

有三项要求常常让人措手不及。签名和上传需要 macOS 和 Xcode，没有完全靠 Windows 上架的路。构建要抵达你自己设备之外的任何设备，都需要先有一份每年 99 美元的 Apple Developer Program 会员资格。你还需要一套为触摸设计的操作方案，因为审核是由真人在真机上完成的，而且不会外接手柄。

Summer Engine 目前导出桌面版本，iOS 版本需要装有 Xcode 的 Mac、签名，还要针对触控输入做一轮适配。C++ 和 GDScript 都能迁移过来，C# 可在桌面编辑器中使用，不过在 Godot 4 工作流中，C# 在 iOS 上仍属实验性。项目归你，不收分成。

## 账号、证书与上传路径

以个人或组织身份加入 Apple Developer Program。创建与你的包标识符匹配的 App ID。生成分发证书和 App Store 描述文件。构建后打开 Xcode 项目，设置签名团队，归档，再通过 Xcode 或 Transporter 上传到 App Store Connect。通过 TestFlight 分发以便在真实硬件上测试。然后带着元数据、各要求设备尺寸的截图、年龄分级、隐私政策网址和隐私清单提交审核。

## 为触摸和为设备做设计

为拇指设计操作，而不是在玻璃上复刻一个手柄。触摸目标最小 44 点。让动作区域避开手掌搁放的位置。为主屏指示条和摄像头挖孔尊重安全区内边距。明确支持竖屏或横屏，而不是稀里糊涂两个都支持。在有帮助的地方加上触感反馈。把 MFi 手柄支持当作可选路径，但要让触摸本身就是完整体验，因为游戏就会以这种方式被审核和游玩。

## 中断、内存与持续性能

在失焦时保存，让来电、闹钟或锁屏永远不会让进度丢失。中断之后正确恢复音频。盯住内存，因为 iOS 会终止超出预算的应用，而玩家会当成崩溃。在你支持的最老设备上测量几分钟内的持续帧率，因为热降频会在第一次跑分之后很久才出现。把下载体积压低，既为了蜂窝下载提示，也为了安装转化。

## 专门影响游戏的审核规则

所有数字商品必须使用苹果的应用内购买。开箱类玩法需要公示概率。儿童类目应用在数据和广告上有更严格的规则。带用户生成内容的游戏需要审核和举报机制。截图必须属实，不能代表实际玩法的宣传图会被拒。在做变现之前先把 App Review Guidelines 读一遍，因为这些规则塑造的是设计，不只是文书。

## FAQ

### 发行 iOS 游戏需要 Mac 吗？

需要。签名和上传都要用 Xcode，而它只在 macOS 上运行。租来或借来的 Mac 可以完成最后几步，但没有受支持的、只靠 Windows 的路径。

### 要花多少钱？

Apple Developer Program 每年 99 美元。苹果会从销售中抽成，加入小企业计划的开发者抽成更低。Summer Engine 不收任何分成。

### App Store 审核要多久？

多数审核在一两天内完成，不过首次提交和复杂应用会更久。为第一次发行多留些时间，因为被拒通常和元数据有关，修好再提交很快。

### iOS 上能用 C# 吗？

C# 可在桌面编辑器中使用，但在 Godot 4 工作流中，C# 在 iOS 上仍属实验性。打算发布到 iOS 的玩法代码，用 GDScript 或 C++ 更稳妥。

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

能，但要用它自己的工具链。Android 需要 Android SDK 和用于签名的密钥库，每个商店都需要自己的元数据，输入也应该分平台检查。Summer 也可以从同一个项目导出桌面版本。

[开始重建](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