Обзор мультиплатформенности Kotlin

Kotlin Multiplatform (KMP) позволяет использовать код Kotlin на разных платформах. Kotlin Multiplatform разработан компанией JetBrains, и использование KMP для мобильных платформ является стабильным и готовым к использованию .

Мультиплатформенные библиотеки Jetpack

Kotlin Multiplatform официально поддерживается Google для обмена бизнес-логикой между Android и iOS. Многие из наших библиотек Jetpack уже перенесены, чтобы использовать преимущества KMP.

Следующие библиотеки Jetpack обеспечивают поддержку KMP:

Идентификатор группы Maven Последнее обновление Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз Документация
аннотация (*) 30 октября 2024 г. 1.9.1 - - -
коллекция 26 февраля 2025 г. 1.4.5 1.5.0-rc01 - -
хранилище данных 26 февраля 2025 г. 1.1.3 - - - Документация
жизненный цикл (*) 26 февраля 2025 г. 2.8.7 - - 2.9.0-альфа11
пейджинг (*) 12 февраля 2025 г. 3.3.6 - - -
комната 26 февраля 2025 г. 2.6.1 2.7.0-rc01 - - Документация
Склайт 26 февраля 2025 г. 2.4.0 2.5.0-rc01 - - Документация

Маркеры, показывающие доступность API платформы.

В справочной документации этих библиотек API-интерфейсы помечены в зависимости от их доступности для общего кода, Android и Native. Вы также можете фильтровать объявления по платформам вверху каждой страницы.

Репозиторий kotlin-multiplatform-samples на GitHub демонстрирует некоторые функциональные возможности этих библиотек.

Если у вас есть отзывы об этих библиотеках, поделитесь ими через систему отслеживания проблем .

Поддерживаемые платформы

Выпуски библиотеки Jetpack для официально поддерживаемых платформ Android и iOS соответствуют одинаковым требованиям к качеству и совместимости. Однако, поскольку мы работаем над расширением поддержки мультиплатформы Jetpack Kotlin на другие платформы, поддержка инструментов и инфраструктуры может находиться в стадии разработки.

Текущий уровень поддержки каждой платформы можно свести к уровням:

Уровень 1 :

Уровень 2 :

  • Частично протестировано на CI; ограничено тестами на стороне хоста
  • Нет отслеживания исходного кода или двоичной совместимости.

Уровень 3 :

  • Непроверено на CI
  • Нет отслеживания исходного кода или двоичной совместимости.
Платформа Уровень поддержки
Андроид Уровень 1
JVM Уровень 1
iOS Уровень 1
macOS Уровень 2
WatchOS Уровень 3
ТВОС Уровень 3
Линукс Уровень 2
Окна Уровень 3
ВАСМ Уровень 3

Инструментальная поддержка

Вы можете открывать, редактировать и запускать многоплатформенные проекты в Android Studio. Однако некоторые функции IDE для этих проектов пока недоступны. Чтобы создать новый проект, используйте мастер Kotlin Multiplatform от JetBrains .

Мы также обеспечиваем совместимость плагина Android Gradle с мультиплатформой Kotlin, тестируя основные сценарии для новых выпусков.