最近,不少开发者在 App Store Connect 后台收到了两条醒目的警告,内容直指应用的 MinimumOSVersion(最低部署版本)。如果你的项目还在支持 iOS 12,甚至更老的系统,那接下来的几个月里,你将无法提交任何新版本或更新。
今天这篇文章就来完整解读这两条警告的含义、苹果的时间表,以及你需要马上采取的行动。
你收到了什么样的警告?
你看到的警告原文大概是这样:
App Store Connect Warning
MinimumOSVersion too low. This app has a MinimumOSVersion of 12.0. Starting later this year, all iOS apps must have a MinimumOSVersion of 13.0 or later in order to be uploaded to App Store Connect or submitted for distribution.
App Store Connect WarningMinimumOSVersion too low. This app has a MinimumOSVersion of 12.0. Starting in Spring 2027, all iOS apps must have a MinimumOSVersion of 15.0 or later in order to be uploaded to App Store Connect or submitted for distribution.
简而言之,苹果正在分两步淘汰旧系统 ,而你当前应用的最低版本设置(12.0)已经同时触犯了这两条红线。
政策时间线梳理
先帮你理清最关键的时间节点(以今天 2026 年 8 月为基准):
| 时间节点 | 硬性要求 | 你的处境 |
|---|---|---|
| 当前 | 无强制限制,但已发出警告 | 部署目标为 12.0,收到两条警告 |
| 2026 年内(预计秋季) | 最低版本 ≥ iOS 13.0 | 如果不升级,将无法上传、无法提交审核、无法发布 |
| 2027 年春季 | 最低版本 ≥ iOS 15.0 | 哪怕已升至 13.0,届时也必须再次升至 15.0,否则同样无法提交 |
很明显,第一道死线距今可能只有 1~3 个月,时间已经非常紧迫。
苹果为什么要这样做?
这一举措并非突然袭击,而是苹果一贯的生态系统升级策略:
-
安全与隐私
iOS 13 引入了 Sign in with Apple、增强的位置权限控制等;iOS 15 则带来了 iCloud Private Relay、App 隐私报告等。强制提升最低版本,能倒逼用户尽快离开充满安全漏洞的老系统。
-
减少开发者负担
每多兼容一个老系统,开发者就需要多维护一套分支代码、多配置一台测试机、多处理一种崩溃组合。当老系统的活跃设备占比跌到个位数时,继续兼容的性价比已经极低。
-
推动新 API 普及
SwiftUI、WidgetKit、App Clips 等新框架的许多功能都要求 iOS 14/15+。只有淘汰 iOS 12/13,苹果才能更快地让生态整体迁移到现代开发范式上。
我该怎么修改?一步到位还是分步走?
操作步骤(Xcode)
- 打开 Xcode 项目,进入 Project 设置(不是 Target)。
- 选中你的主 Target,切换到 General 标签。
- 在 Minimum Deployments 区域,将 iOS 的值修改为你选定的版本。
- 或者直接修改
project.pbxproj文件,把IPHONEOS_DEPLOYMENT_TARGET的值全局替换。
修改后重新打包上传,App Store Connect 的警告就会消失。
版本选择建议:立刻直接设为 iOS 15.0
收到两条警告时,很多人的第一反应是「先把 12.0 改成 13.0,明年再说」。但我强烈建议你现在就直接一步到位升级到 iOS 15.0,理由有三:
- 避免重复工作
现在改 13.0,明年春天你得再改一次 15.0,而且两次变更都需要回归测试。 - 用户覆盖几乎无影响
截至 2025--2026 年,全球 iOS 15 及以上系统的活跃设备占比早已超过 96%。还在使用 iOS 12-14 的设备通常是 iPhone 6 及更早机型,这些设备的电池、性能早已严重衰退,你的应用为它们继续维护代码的价值已经微乎其微。 - 提前享用现代框架
iOS 15 带来了 async/await、SwiftUI 3/4 的稳定改进、Core Data 的并发新特性等。解除旧系统的束缚,能让你立刻在代码中更自由地使用这些生产力工具。
升级后需要检查的三件事
1. 废弃 API 清理 比如 UIWebView 早在 iOS 12 就被标记废弃,iOS 13 开始强制使用 WKWebView。如果你的代码还在用一些 iOS 13/14 期间被废弃的 API,正好趁这次统一替换。
2. 第三方库兼容性 升级 Deployment Target 后,建议 pod update 或重新解析 Swift Package。极少数古早库可能写死了小于 15.0 的版本要求,你需要寻找替代方案或自行修正。
3. UI 与系统行为回归
- iOS 15 的导航栏、列表样式与早期版本有区别,需检查界面是否错乱。
- 如果你用到了
UIScene相关声明,确认Info.plist中的配置对 iOS 13+ 兼容,但既然最低支持已是 15,不必再担心 12 的回退问题。
写在最后
苹果这次的警告并不是「建议」,而是有明确截止日期的强制性要求 。以当前时间点看,2026 年内升级到 13.0 的死线已经非常近,而 2027 年春季的 15.0 要求也紧随其后。
如果你现在还在维护一款设置了 MinimumOSVersion = 12.0 的应用,请今天就打开 Xcode,把 Deployment Target 改成 15.0。这样不仅能让你在未来一年半内安心提交更新,也能让你的代码库彻底卸下历史包袱,轻装上阵。