Настройка среды
Старая документация Kotlin Multiplatform Mobile заменена общим руководством Kotlin Multiplatform. Прежде чем создавать первый KMP-проект, настройте IDE и необходимые инструменты.
- Выберите и установите IDE. Kotlin Multiplatform полностью поддерживается в IntelliJ IDEA и Android Studio.
Для установки JetBrains рекомендует JetBrains Toolbox App: он позволяет управлять несколькими версиями IDE, включая EAP- и Nightly-сборки.
Плагинам Kotlin Multiplatform нужна как минимум IntelliJ IDEA 2025.2.2 или Android Studio Otter 2025.2.1.
- Установите Kotlin Multiplatform IDE plugin.
Плагин также установит зависимости, которых ещё нет в вашей IDE.
- Если переменная окружения
ANDROID_HOMEне задана, настройте её так, чтобы система находила Android SDK.
Для macOS/Linux добавьте команду в .profile или .zprofile:
export ANDROID_HOME=~/Library/Android/sdk
Для PowerShell можно задать постоянную переменную окружения так:
[Environment]::SetEnvironmentVariable('ANDROID_HOME', '<path to the SDK>', 'Machine')
Для CMD используйте setx:
setx ANDROID_HOME "<path to the SDK>"
- Для создания iOS-приложений нужен macOS-хост с установленным Xcode. IDE будет запускать Xcode под капотом, чтобы собирать iOS-фреймворки.
Запустите Xcode хотя бы один раз до работы с KMP-проектами, чтобы он прошёл первичную настройку. После обновлений Xcode его также нужно запускать вручную, чтобы загрузить обновлённые инструменты. Kotlin Multiplatform IDE plugin выполняет предварительные проверки и сообщает, если Xcode не готов к работе.
- После настройки окружения создайте проект через мастер IDE: выберите File | New | Project и шаблон Kotlin Multiplatform.
Для первого демо-проекта можно выбрать Android, iOS, Desktop, Web и Server. Там, где доступна опция Share UI, оставьте её включённой, чтобы использовать Compose Multiplatform как UI-фреймворк.
Проверить проблемы окружения можно в окне Project Environment Preflight Checks. Оно показывает результаты проверок, позволяет перезапустить их и изменить настройки.
Дальше можно перейти к созданию Compose Multiplatform-приложения или к приложению с общей логикой и нативным UI.