Создайте своё первое кроссплатформенное приложение
Здесь вы узнаете, как создать и запустить ваше первое приложение Kotlin Multiplatform с помощью Android Studio.
Создайте проект по шаблону
В Android Studio выберите Файл | Новый | Новый проект.
-
Выберите Приложение Kotlin Multiplatform в списке шаблонов проектов и нажмите Далее.

-
Укажите имя вашего первого приложения и нажмите Далее.

-
В списке распределения фреймворка iOS выберите вариант Обычный фреймворк.

Сохраните стандартные имена для приложения и общих папок. Нажмите Готово.
Проект будет настроен автоматически. Это может занять некоторое время для загрузки и настройки необходимых компонентов при первом выполнении.
Изучите структуру проекта
Чтобы просмотреть полную структуру вашего мобильного многоплатформенного проекта, переключите вид с Android на Проект.
Каждый проект Kotlin Multiplatform включает три модуля:
shared — это модуль Kotlin, содержащий логику, общую для приложений Android и iOS — код, который вы используете на разных платформах. Он использует Gradle в качестве системы сборки, которая помогает автоматизировать процесс сборки. Модуль shared компилируется в библиотеку Android и фреймворк iOS.
androidApp — это модуль Kotlin, который компилируется в приложение Android. Он использует Gradle в качестве системы сборки. Модуль androidApp зависит от и использует модуль shared как обычную библиотеку Android.
iosApp — это проект Xcode, который компилируется в приложение iOS. Он зависит от и использует модуль shared как фреймворк iOS. Модуль shared может использоваться как обычный фреймворк или как зависимость CocoaPods, в зависимости от того, что вы выбрали на предыдущем шаге в распределении фреймворка iOS. В этом руководстве это обычная зависимость фреймворка.
Модуль shared состоит из трех наборов исходных кодов: androidMain, commonMain, и iosMain. Набор исходных кодов — это концепция Gradle для набора файлов, логически сгруппированных вместе, где каждая группа имеет свои зависимости. В Kotlin Multiplatform различные наборы исходных кодов в модуле shared могут быть ориентированы на разные платформы.
Запустите приложение
Вы можете запустить своё многоплатформенное приложение на Android или iOS.
Запуск приложения на Android
Создайте виртуальное устройство Android.
В списке конфигураций запуска выберите androidApp.
-
Выберите своё виртуальное устройство Android и нажмите Запустить.

Запуск на другом Android эмуляторе
Запуск на реальном устройстве Android
Запуск приложения на iOS
Запустите Xcode в отдельном окне. В первый раз также может потребоваться принять лицензионное соглашение и разрешить выполнение некоторых начальных задач.
-
В Android Studio выберите iosApp в списке конфигураций запуска и нажмите Запустить.
Если в списке нет доступной конфигурации iOS, добавьте новое виртуальное устройство iOS.
Запуск на новом виртуальном устройстве iOS
Если вы хотите запустить приложение на виртуальном устройстве, вы можете добавить новую конфигурацию запуска.
-
В списке конфигураций запуска нажмите Изменить конфигурации.
-
Нажмите кнопку + над списком конфигураций и выберите Приложение iOS.

Назовите вашу конфигурацию.
Выберите файл проекта Xcode. Для этого перейдите в свой проект, например KotlinMultiplatformSandbox, откройте папку
iosAppи выберите файл.xcodeproj.-
В списке Целевая среда выполнения выберите виртуальное устройство и нажмите ОК.

Нажмите Запустить, чтобы запустить приложение на новом виртуальном устройстве.
Запуск на реальном устройстве iOS
Подключите реальное устройство iPhone к Xcode.
Убедитесь, что ваше приложение подписано. Для получения дополнительной информации см. официальную документацию Apple.
Создайте конфигурацию запуска, выбрав iPhone в списке Целевая среда выполнения.
Нажмите Запустить, чтобы запустить приложение на устройстве iPhone.
Обновление вашего приложения
-
В
shared/src/commonMain/kotlin, откройте файлGreeting.ktв папке проекта. Этот каталог хранит общий код для Android и iOS. Если вы внесёте изменения в общий код, они будут отражены в обоих приложениях.
-
Обновите общий код, используя
reversed(), стандартную функцию Kotlin для обратного преобразования текста, которая работает на всех платформах:class Greeting { private val platform: Platform = getPlatform() fun greet(): String { return "Guess what it is! > ${platform.name.reversed()}!" } } -
Запустите конфигурацию androidApp, чтобы увидеть обновлённое приложение в эмуляторе Android.

-
В Android Studio переключитесь на iosApp и запустите его, чтобы увидеть обновлённое приложение в эмуляторе iOS.
Следующий шаг
В следующей части руководства вы узнаете о зависимостях и добавите стороннюю библиотеку, чтобы расширить функциональность вашего проекта.
См. также
Узнайте, как создавать и запускать тесты для многоплатформенных приложений, чтобы проверить правильность работы кода.
Узнайте больше о структуре проекта, артефактах модуля общего кода и о том, как создаются приложения для Android и iOS.
Получить помощь
Kotlin Slack. Получите приглашение и присоединитесь к каналу #multiplatform.
Система отслеживания ошибок Kotlin. Отправить новую ошибку.
© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/multiplatform-mobile-create-first-app.html