Обзор мультиплатформенности 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 - - -
коллекция 13 ноября 2024 г. 1.4.5 - - 1.5.0-альфа06
хранилище данных 1 мая 2024 г. 1.1.1 - - - Документация
жизненный цикл (*) 13 ноября 2024 г. 2.8.7 - - 2.9.0-альфа07
пейджинг (*) 13 ноября 2024 г. 3.3.4 - - -
комната 30 октября 2024 г. 2.6.1 - - 2.7.0-альфа11 Документация
Склайт 30 октября 2024 г. 2.4.0 - - 2.5.0-альфа11 Документация

Маркеры, показывающие доступность 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, тестируя основные сценарии для новых выпусков.