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

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

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

Сохраните стандартные имена для приложения и общих папок. Нажмите Готово.
Проект будет настроен автоматически. Это может занять некоторое время для скачивания и настройки необходимых компонентов при первом выполнении.
Изучите структуру проекта
Чтобы просмотреть полную структуру вашего мобильного кроссплатформенного проекта, переключите представление с Android на Проект.

Каждый проект Kotlin Multiplatform Mobile включает три модуля:
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.
Обновление вашего приложения
-
Откройте файл
Greeting.ktвshared/src/commonMain/kotlin. Этот каталог хранит общий код для Android и iOS. Если вы внесёте изменения в общий код, они будут отражены в обоих приложениях.
-
Обновите общий код, используя
reversed(), стандартную функцию Kotlin для реверсирования текста, которая работает на всех платформах:class Greeting { private val platform: Platform = getPlatform() fun greeting(): 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