用户能升系统,不代表你的构建机、SDK 和商店包已经对齐。 下文按「今天就能交什么」「明年四月必须交什么」「本机和 CI 要先换哪一层」三条线拆开,用来和站内iOS 27 机型档位、WWDC26 的 Xcode 27 / Foundation Models串起来。
正确理解:正式版开放的是用户设备;开发者窗口是「现在可以交 27 SDK 的包,明年 4 月必须交」。常见误判是「系统一升,今晚就得切 Xcode 27,否则商店拒收」——两条时间线不要叠成一条。
时间线:用户升级日 ≠ 开发者截止日
Apple 在 9 月 9 日秋季发布会上宣布 iOS 27 于 9 月 14 日向兼容机型开放;同一天,开发者新闻写明:可以用 Xcode 27 Release Candidate 构建,并提交 App Store / TestFlight。用户升级和商店开门几乎叠在同一周,但强制换 SDK 不是同一周。
| 日期 | 对用户 | 对开发者 |
|---|---|---|
| 2026-06-10 起 | 开发者 / 公开测试版 | Xcode 27 beta 可打 TestFlight 内测包 |
| 2026-09-09 | 发布会宣布 9.14 开放 | Xcode 27 RC(27A266a)可交 App Store 与 TestFlight |
| 2026-09-14 | iOS 27 正式版,iPhone 11 及更新机型可升 | 真机调试、崩溃日志、审核机开始大量落到 27 |
| 2027-04 | — | 上传到 App Store Connect 的 iOS / iPadOS / tvOS / visionOS / watchOS 包必须用对应 27 SDK 或更新版本构建 |
机型名单和 Apple Intelligence 分档见五台机对照;发布节奏见秋季发布会节点。本文只谈工具链和商店规则,不重复「哪台机能装」。
Xcode 27 装在哪、跑什么
Xcode 27 带 Swift 6.4,以及 iOS 27、iPadOS 27、macOS 27、tvOS 27、watchOS 27、visionOS 27 整套 SDK。真机调试下限是 iOS 17 / tvOS 17 / watchOS 10 / visionOS 1。部署目标仍可下探到 iOS 15——强制的是构建 SDK,不是最低系统版本。
| 项 | Xcode 27 的硬条件 |
|---|---|
| 宿主系统 | macOS Tahoe 26.4 或更新 |
| 宿主芯片 | 仅 Apple silicon;Intel Mac 装不上、跑不了 |
| 编译器 | Swift 6.4;语言模式仍可选 Swift 6 / 5 / 4.2 / 4 |
| macOS 27 SDK | 可把 Universal 包回退部署到 macOS 12;Intel 开发只在仍带 Rosetta 的系统上可行 |
| Mac App 上架 | macOS 26 是最后一版同时支持 Intel 与 Rosetta 的系统;macOS 27 只服务 Apple silicon |
本机还是 Intel,今晚不要硬升
Xcode 27 不会在 Intel 上「凑合跑」。要交 27 SDK 的包,构建机必须先换成 Apple silicon。Windows / Linux 开发者仍然只能远程用 Mac,见在 Windows 上用 Xcode。
装完先核对 SDK 是否齐,不要只看 Xcode 关于页的大版本号:
# 确认宿主与 SDK sw_vers xcodebuild -version xcodebuild -showsdks # Xcode 27 预览:无工作区也可跑的 MCP server xcrun mcp-server status # 需要时:sudo xcrun mcp-server enable
Xcode 27 的 Coding Intelligence 可以验证 watchOS(含 Digital Crown / Action Button),并预览一套不依赖打开工作区的 MCP server。无值守环境可以用 sudo xcrun mcp-server enable --unsafe-always-allow-all-agents,这不是工位默认配置。远程 xcodebuild 流水线仍按远程 Xcode 自动化测试那套跑。
SDK 硬门槛:Scene 与启动屏
用 iOS 27 SDK 编出来的包,有两处会让旧工程直接起不来或直接被拒收。用旧 SDK 编的包暂时不受这两条约束——这也是「现在还能拖」和「切 27 SDK 当天就要改」的分界。
1. Scene-based life cycle:缺了就启动失败
从 iOS 27 / iPadOS 27 / Mac Catalyst 27 / tvOS 27 / visionOS 27 起,用最新 SDK 构建的 App 必须采用 scene-based life cycle,否则启动失败。Apple 文档写得很硬:不是警告,是起不来。
- 你需要迁的信号
Info.plist里没有UIApplicationSceneManifest,或没有可用的 scene 配置。- AppDelegate 没有实现
application(_:configurationForConnecting:options:)。 - 两种合法写法
- 在 Deployment Info 里打开 Scene manifest,写入默认 scene 配置;或在 AppDelegate 里按会话动态返回配置。
只切 SDK、不切生命周期
审核机和用户设备都在升 27。用 27 SDK 编出来却仍走旧 AppDelegate 单窗口路径,本地模拟器有时还能「看起来能跑」,真机或审核机上会直接失败。迁 Scene 要赶在第一次用 27 SDK 出包之前,不要赶在拒信之后。
2. 启动屏:TN3208 / ITMS-90870
从 iOS 27 / iPadOS 27 起,App Store Connect 要求 Info.plist 里至少有下列四键之一:UILaunchStoryboardName、UILaunchStoryboards、UILaunchScreen、UILaunchScreens。缺了就拒收,错误码 ITMS-90870。这条对 App Store 和欧盟替代商店同样生效。
<!-- 新 SwiftUI 工程默认会写 UILaunchScreen --> <key>UILaunchScreen</key> <dict/> <!-- 或沿用 storyboard:UILaunchStoryboardName -->
新 SwiftUI 工程在打开 Generate Info.plist File 和 Launch Screen (Generation) 时会自动带 UILaunchScreen。老工程、把 Info.plist 删瘦过的工程、以及自己拼 bundle 的 CI,最容易漏。验证方法:删掉设备 / 模拟器上的 App,再装一次,启动屏应在首屏之前闪一下。
App Store:现在可选,明年四月必选
9 月 9 日之后,你可以交 Xcode 27 RC 打出来的包。强制门槛写在 2027 年 4 月:iOS / iPadOS 必须用 iOS 27 & iPadOS 27 SDK 或更新版本;tvOS、visionOS、watchOS 各自对应 27 SDK。注意:公告没有把 macOS 27 SDK 写进同一条「必须」名单——Mac App 的压力来自「只剩 Apple silicon」,不是同一句 April 2027 条款。
| 平台 | 2027 年 4 月起上传要求 |
|---|---|
| iOS / iPadOS | iOS 27 & iPadOS 27 SDK 或更新 |
| tvOS | tvOS 27 SDK 或更新 |
| visionOS | visionOS 27 SDK 或更新 |
| watchOS | watchOS 27 SDK 或更新 |
| macOS | ~~未写入同一条强制 SDK 句~~;但 macOS 27 只跑 Apple silicon,Intel 包没有下一代系统可去 |
商店页本身也在变。Apple 要求重新回答年龄分级问题:新的 Time Allowances 让家长按娱乐、游戏、社交媒体等类别管时长;App 若含社交媒体能力,必须在 App Store Connect 里标明。产品页多了 header 与搜索结果素材,上架前可用即将到来的产品页预览工具核对。这些不是 SDK 编译错误,但会卡「准备提交」。
建议的切换节奏
9 月:用 Xcode 27 打一版 TestFlight,只验证 Scene、启动屏、真机启动。主商店包可以仍用 Xcode 26,直到 27 SDK 构建在 CI 上稳定。把「第一次用 27 SDK 出生产包」和「2027 年 4 月强制日」中间留出至少一个完整迭代,不要卡在截止周才迁生命周期。
Foundation Models 与审核侧新问题
WWDC26 把 Foundation Models 收成一套 Swift API:端侧模型、Private Cloud Compute 上的服务端模型、以及第三方通过 LanguageModel 协议接入的包,走同一套调用。Core AI 让你自己的模型也能当一等提供者;Evaluations 用来测智能功能。图像输入、自定义 skill、Dynamic Profiles 是 27 平台这一轮的增量。背景见WWDC26:苹果 AI 与 Copilot 对照。
小团队有一条容易漏的资格:加入 App Store Small Business Program、且累计首次下载低于 200 万的开发者,使用跑在 Private Cloud Compute 上的下一代 Apple Foundation Models 不另收云 API 费。这不是「全员免费」,资格要自己对。
Xcode 27 的 Foundation Models Instrument 可以看 instruction、prompt、response、token 用量和推理耗时。智能功能进审核时,你要能说明:数据有没有出端、走没走 PCC、第三方模型供应商是谁。把「能调用模型」和「审核材料写得清」当成两件事做。
CI / 云端 Mac:Intel 构建机到此为止
正式版之后,最容易在发布周爆掉的不是 Swift 语法,是构建机还停在 Intel 或 macOS 26.3。Xcode 27 要 26.4+ 和 Apple silicon;Address Sanitizer 在 iOS 27 上用 Xcode 26.4 及更旧版本可能起不来,需要 26.5 或 Xcode 27。GitHub 托管的 macos-latest 若镜像落后,队列和 Xcode 版本会一起卡住。
- 本机 — Apple silicon + macOS 26.4+,再装 Xcode 27;Intel 笔记本只适合继续打 26 SDK 的维护包
- CI — self-hosted Runner 必须是 M 系列;把
xcode-select、证书、模拟器运行时和 27 SDK 写进同一台机器的清单 - 远程桌面 — Windows / Linux 同事继续 SSH / VNC 到这台 Mac,不要幻想本机装 Xcode 27
- 密钥 — 不要把生产签名证书拷进日常办公本;发布机和开发机分开
需要一台不被日常占用、系统版本跟得上 Xcode 27 的 Mac,按天租独享节点比把整台办公本升级到 26.4 更可控——尤其是团队里还有人必须留在旧系统打热修。
两周内检查清单
- 确认构建机是 Apple silicon,且
sw_vers≥ 26.4。 - 安装 Xcode 27 RC / 正式版,
xcodebuild -showsdks能看到 iOS 27。 - 工程打开 Scene manifest;删掉真机上的旧包,冷启动一次。
- 检查
Info.plist四键之一;用 27 SDK 打一版 Internal TestFlight,看会不会出现 ITMS-90870。 - 重答年龄分级;有社交能力就在 Connect 里勾上。
- 产品页 header / 搜索素材按新模板补一版,哪怕主商店包暂时仍用 Xcode 26。
- Mac App 若还在出 Intel slice,写明这是最后一代;新功能只做 arm64。
- 把「第一次 27 SDK 生产包」排进 2026 Q4 或 2027 Q1,不要排进 2027 年 3 月最后一周。
常见问题
现在必须用 iOS 27 SDK 才能上架吗?
现在不必。9 月 9 日起可以用 Xcode 27 / iOS 27 SDK 提交;强制门槛是 2027 年 4 月。在那之前,Xcode 26 打的包仍可上传,但新 API 和新审核项你拿不到。
Intel Mac 还能装 Xcode 27 吗?
不能。Xcode 27 只在 Apple silicon 上安装和运行。macOS 26 是最后一版同时支持 Intel 与 Rosetta 的系统;macOS 27 只服务 Apple silicon。Intel 构建机要在明年 4 月强制 SDK 之前退役。
用 iOS 27 SDK 编译后,App 为什么会启动失败?
最常见的是还在用旧的 AppDelegate 生命周期。用最新 SDK 编出来的包必须采用 scene-based life cycle,否则在 iOS 27 上直接起不来。用旧 SDK 编的包暂时不受这条约束。
ITMS-90870 是什么?
缺少启动屏。用 iOS 27 SDK 或更新版本构建的包,Info.plist 必须包含 UILaunchStoryboardName、UILaunchStoryboards、UILaunchScreen、UILaunchScreens 四键之一,否则 App Store Connect 拒收。
最低部署版本必须升到 iOS 27 吗?
不必。Xcode 27 仍允许把 iOS 部署目标设到 iOS 15。强制的是「用哪套 SDK 构建」,不是「用户最低系统版本」。
ZavCloud Developer Infrastructure
把 Xcode 27 放在一台跟得上 26.4 的独享 Mac 上
Intel 构建机装不上 Xcode 27。发布周不要让办公本同时扛升级、签名和日常开发。
按天租用 Apple silicon Mac mini,给 CI 和 27 SDK 出包单独的磁盘与账号。