你的 iOS 最低部署版本即将不再被 App Store 接受

179 阅读5分钟

最近,不少开发者在 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 Warning
MinimumOSVersion 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 个月,时间已经非常紧迫。

苹果为什么要这样做?

这一举措并非突然袭击,而是苹果一贯的生态系统升级策略:

  1. 安全与隐私
    iOS 13 引入了 Sign in with Apple、增强的位置权限控制等;iOS 15 则带来了 iCloud Private Relay、App 隐私报告等。强制提升最低版本,能倒逼用户尽快离开充满安全漏洞的老系统。

  2. 减少开发者负担
    每多兼容一个老系统,开发者就需要多维护一套分支代码、多配置一台测试机、多处理一种崩溃组合。当老系统的活跃设备占比跌到个位数时,继续兼容的性价比已经极低。

  3. 推动新 API 普及
    SwiftUI、WidgetKit、App Clips 等新框架的许多功能都要求 iOS 14/15+。只有淘汰 iOS 12/13,苹果才能更快地让生态整体迁移到现代开发范式上。

我该怎么修改?一步到位还是分步走?

操作步骤(Xcode)

  1. 打开 Xcode 项目,进入 Project 设置(不是 Target)。
  2. 选中你的主 Target,切换到 General 标签。
  3. Minimum Deployments 区域,将 iOS 的值修改为你选定的版本。
  4. 或者直接修改 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。这样不仅能让你在未来一年半内安心提交更新,也能让你的代码库彻底卸下历史包袱,轻装上阵。