Назад
mobileproduct

iOS 26 SDK с 28 апреля: что сделать с приложением до дедлайна

Apple принимает только сборки на iOS 26 SDK с 28 апреля 2026. Разбираем, что обязательно успеть, что можно отложить и как не остаться без срочного исправления.

Опубликовано: 2026-02-06

3 февраля Apple объявила: с 28 апреля 2026 года приложения и обновления, загружаемые в App Store Connect, должны быть собраны с iOS 26 SDK или новее. Короткий ответ для владельца приложения: до этой даты нужно один раз выпустить обновление, собранное в Xcode 26, — тогда следующее срочное исправление не упрётся в смену инструментов. Редизайн под Liquid Glass и другие новшества iOS 26 обязательными от этого не становятся.

Что требует Apple и чего не требует

ВопросОтвет
Что меняется 28 апреляСборки для iOS и iPadOS принимаются только с iOS 26 SDK, то есть из Xcode 26 или новее
Касается ли это других платформДа: для tvOS, visionOS и watchOS тоже нужен SDK версии 26
Нужно ли отказываться от старых версий iOSНет. Xcode 26 поддерживает отладку на устройствах с iOS 15 и новее
Нужно ли переходить на Liquid GlassНет, старое оформление можно временно сохранить специальным ключом
Что с версией, которая уже опубликованаТребование касается загрузок в App Store Connect, про опубликованные версии в объявлении ничего не сказано
Распространяется ли на TestFlightСборки для TestFlight тоже загружаются через App Store Connect, так что правило касается и их

Это ежегодный порядок, а не разовая акция. В прошлом году такой рубеж наступил 24 апреля 2025-го: с этой даты обновления принимались только из Xcode 16 с SDK iOS 18. Если ритм сохранится, весной 2027 года потребуют уже SDK следующей версии, и переход придётся повторить.

Почему это касается приложений без планов на релиз

Опаснее всего требование для приложений, которые «просто работают» и не обновлялись с прошлого года. Пока всё стабильно, разницы нет. Но после 28 апреля любое исправление — сбой оплаты, новый текст согласия, сломанная интеграция с сервером — придётся выпускать уже на Xcode 26. Вместо исправления в один день команда сначала обновляет инструменты, зависимости и сборку, а пользователи всё это время ждут.

Особенно чувствительны приложения, привязанные к датам: мероприятия, выездные работы, сезонные продажи. В нашем продукте PrimePlanner, системе управления мероприятиями, у участника есть мобильное приложение для iOS и Android с программой, расписанием встреч, документами, чатами и push-уведомлениями. Для таких приложений исправление обычно нужно к конкретному дню, и времени на смену инструментов в нём нет. Переход стоит сделать плановым релизом, а не по случаю.

Что обязательно сделать до 28 апреля

Обновить среду сборки

Xcode 26 работает на Mac с macOS Sequoia 15.6 или новее. Проверьте всё, где собирается приложение: компьютеры разработчиков, сборочный Mac в офисе, образы облачного CI. Если сборка идёт у подрядчика, спросите, на какой версии Xcode он выпускает ваши обновления.

Проверить зависимости

Больше всего вопросов обычно вызывают не ваши экраны, а сторонние библиотеки: SDK аналитики, платежей, push-уведомлений, карт, авторизации. Для каждой нужна версия, которая собирается в Xcode 26, а её обновление может потянуть за собой изменения в коде.

Пример того, что меняется под капотом: в Xcode 26 Swift explicit modules стали режимом сборки по умолчанию. Apple оставила возможность отключить его настройкой SWIFT_ENABLE_EXPLICIT_MODULES=NO, если проект с ним не собирается, но это временное решение, а не исправление.

Обновить кроссплатформенный фреймворк

Если приложение на Flutter, React Native или NativeScript, сначала обновляется фреймворк, потом всё остальное:

  • Flutter заявил полную поддержку iOS 26 и Xcode 26 в версии 3.38 от 12 ноября 2025 года. Если вы на более старой версии, закладывайте обновление фреймворка и плагинов.
  • React Native в версии 0.81 предупреждал, что экспериментальные предсобранные iOS-сборки не работали в бете Xcode 26 и требовали обходной настройки. Проверьте, какая версия у вас и как она собирается в финальном Xcode 26.
  • NativeScript — на нём сделаны наши мобильные проекты: платформа корпоративных мероприятий и система поверки приборов учёта. Здесь так же: обновить CLI, iOS-рантайм и плагины, затем собрать в Xcode 26.

Решить вопрос с внешним видом

При пересборке в Xcode 26 стандартные элементы интерфейса получают оформление Liquid Glass. Приложения, собранные в Xcode 16, на iOS 26 выглядят по-прежнему — поэтому многие владельцы увидят новый дизайн впервые именно при переходе на новый SDK.

Если к редизайну вы не готовы, в Info.plist есть ключ UIDesignRequiresCompatibility: он сохраняет прежний вид. Apple прямо говорит, что собирается убрать эту возможность в следующем крупном релизе. Что именно меняет Liquid Glass и что проверять на экранах, мы разбирали в статье iOS 26 и Liquid Glass: что сделать с бизнес-приложением до осени.

Пройти регрессию

Новая сборка должна работать и на iOS 26, и на самой старой версии iOS, которую вы поддерживаете. В приоритете — вход, оплата, push-уведомления, камера и сканер, работа без сети: там чаще всего проявляются изменения в зависимостях.

Что можно отложить

ЗадачаМожно ли отложить
Полный редизайн под Liquid GlassДа, с ключом совместимости. Но Apple планирует убрать его в следующем крупном релизе
Переход UIKit-приложения на UISceneДо следующего SDK. Apple предупредила: в релизе после iOS 26 UIKit-приложение, собранное с новейшим SDK, без UIScene не запустится
Новые возможности iOS 26Да. Foundation Models и другие API — по бизнес-задаче, а не по дедлайну
Повышение минимальной версии iOSДа, Apple этого не требует

Отложить — не значит забыть. Ключ совместимости и UIScene — это работа к следующей весне, и её удобно планировать вместе. Flutter, например, добавил поддержку UIScene в версии 3.38 и просит все существующие iOS-приложения на нём перейти на новый жизненный цикл.

Сколько времени закладывать

До дедлайна остаётся меньше 12 недель. В них нужно уложить аудит, обновление зависимостей, регрессию на двух платформах (если вместе с iOS обновляется общий код, Android-версию тоже придётся проверить) и проверку в App Review. Мы бы ориентировались на то, чтобы отправить сборку на проверку в начале апреля, а не в последние дни: так остаётся запас на замечания ревью и повторную отправку.

Удобнее всего совместить переход с релизом, который уже стоит в плане. Регрессию вы проводите в любом случае, и сборка на Xcode 26 становится частью этого релиза, а не отдельным проектом.

Что это значит для бизнеса

Если приложение активно развивается, переход — это одна задача в спринте: обновить Xcode, зависимости и CI, прогнать тесты. Если приложение год никто не трогал, объём заранее неизвестен. Его определяет не Apple, а то, насколько устарели фреймворк и библиотеки, и узнать это можно только пробной сборкой.

Хуже всего узнать это в день, когда исправление нужно срочно. Поэтому даже при отсутствии планов на новые функции стоит выпустить одно техническое обновление до 28 апреля.

Чек-лист до 28 апреля

  1. Февраль: пробная сборка. Соберите приложение в Xcode 26 на актуальной macOS и составьте список того, что не собралось или выдаёт предупреждения.
  2. Зависимости и фреймворк. Обновите кроссплатформенный фреймворк и библиотеки до версий с поддержкой Xcode 26. Отдельно проверьте SDK оплаты, аналитики и push-уведомлений.
  3. Решение по дизайну. Либо принимаете Liquid Glass и правите выбивающиеся экраны, либо включаете ключ совместимости и ставите редизайн в план на год.
  4. Март: регрессия и CI. Проверьте ключевые сценарии на iOS 26 и на самой старой поддерживаемой версии, переведите CI на Xcode 26 и соберите через него релизную сборку.
  5. Начало апреля: релиз. Отправьте обновление в App Review с запасом времени. После этого заведите в бэклоге UIScene и отказ от ключа совместимости — к следующему требованию Apple.

Если приложение давно без команды, такой переход — хороший повод провести аудит в рамках мобильной разработки: та же работа понадобится и к следующему требованию к SDK.

Источники