Релиз Capacitor 8
- вторник, 20 января 2026 г. в 00:00:03
Пока Я нахожусь в процессе написания второй статьи из цикла про capacitor, решил выпустить в виде статьи перевод анонса Capacitor 8 с замечаниями по миграции с предыдущей версии. Статья предназначена для тех, кто уже использует платформу в продакшене и не подписан на новости платформы. Если у вас есть приложение на Capacitor 7, переход на новую версию вполне логичен.
В статье разберём:
какие изменения появились в Capacitor 8;
зачем имеет смысл обновляться сейчас;
как выглядит миграция с версии 7 на 8 на практике;
на что стоит обратить внимание, чтобы избежать проблем.
Материал ориентирован на существующие web‑проекты, которые уже используются в продакшене.
Ключевое изменение на iOS — новые проекты теперь используют Swift Package Manager вместо CocoaPods. Старые проекты продолжают работать на Pods, обратной несовместимости здесь нет, но вектор развития платформы очевиден.
Практические плюсы такого подхода:
более прозрачное управление зависимостями;
ускорение и стабилизация сборок;
упрощение поддержки проекта в долгосрочной перспективе.
Автоматического перехода существующих проектов на SPM нет. Это отдельное архитектурное решение, а не часть миграции на Capacitor 8.
В Capacitor 8 переработан подход к edge‑to‑edge интерфейсам на Android. Вместо набора флагов и неочевидных отступов появился встроенный механизм управления системными панелями.
Основные изменения:
удалены старые хаки для расчёта отступов;
управление статус‑баром и navigation‑bar вынесено в отдельный API;
безопасные зоны корректно обрабатываются через CSS‑переменные env().
В результате интерфейсы на современных Android‑устройствах ведут себя ожидаемо и предсказуемо.
Capacitor 8 требует обновления всего рабочего окружения:
Node.js 22+;
минимальная версия iOS — 15.0;
Android:
minSdkVersion — 24;
compileSdkVersion — 36;
targetSdkVersion — 36.
Если проект долгое время не обновлялся, переход на Capacitor 8 почти неизбежно потянет за собой обновление инструментов и SDK. Это стоит учитывать при планировании апгрейда.
Держите во внимании тот факт что если у вас версия capacitort ниже 7, то сначала нужно последовательно обновиться до 7 версии во избежании горящей жопы
Capacitor 7 продолжает работать, но:
Android и iOS регулярно повышают минимальные требования;
новые версии плагинов и SDK ориентируются на актуальные версии Capacitor;
старые решения для работы с layout‑ами постепенно превращаются в технический долг.
Обновление сейчас — это запланированная миграция. Обновление позже часто превращается в срочное тушение проблем в CI и сборках.
Для начала обновляем все core‑пакеты Capacitor до версии 8:
npm i @capacitor/core@^8 @capacitor/android@^8 @capacitor/ios@^8
npm i -D @capacitor/cli@^8
После этого запускаем официальный инструмент миграции:
npx cap migrate
Он обновит конфигурацию проекта и укажет на шаги, которые необходимо выполнить вручную.
Основные действия:
Обновить Xcode до версии 26.0 или выше.
Поднять минимальную версию iOS до 15.0.
При использовании CocoaPods необходимо проверить Podfile:
platform :ios, '15.0'
После обновления конфигурации:
npx cap sync ios
Для проектов с длинной историей обновлений имеет смысл открыть Xcode и выполнить один чистый билд вручную.
На Android изменений заметно больше.
Необходимо обновить параметры SDK:
minSdkVersion = 24
compileSdkVersion = 36
targetSdkVersion = 36
Также обновляются:
Android Gradle Plugin;
Kotlin;
Gradle Wrapper.
Дополнительно стоит учесть, что файл layout‑а bridge_layout_main.xml был переименован в capacitor_bridge_layout_main.xml. Если проект использует кастомные layout‑ы или прямые ссылки на этот файл, их необходимо обновить.
Старый флаг конфигурации:
"android": {
"adjustMarginsForEdgeToEdge": true
}
больше не поддерживается.
Рекомендуемый подход:
использовать CSS‑переменные safe‑area inset;
управлять системными панелями через предоставленный API.
Если после обновления интерфейс «поехал», чаще всего причина связана именно с этим изменением.
На iOS изменилось формирование строки user‑agent. Ранее между значениями автоматически добавлялся пробел, теперь это поведение убрано.
Если серверная логика или аналитика завязаны на точное значение user‑agent, этот момент стоит проверить отдельно.
Все официальные плагины Capacitor обновлены до версии 8. Для сторонних или кастомных плагинов совместимость необходимо проверять вручную.
Особое внимание стоит уделить:
авторизации и OAuth‑решениям;
биометрии;
работе с системным UI.
Capacitor 8 — отличный релиз:
сокращение легаси;
более корректное поведение интерфейсов на Android;
современный стек для iOS.
В долгосрочной перспективе обновиться заранее лучше, чем ждать письмо с требованиями срочно обновить SDK или плагины.
Ссылки: