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

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

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

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

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

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

Идентификатор группы Maven Последнее обновление Стабильный выпуск Релиз-кандидат Бета-версия Альфа-релиз Документация
аннотация (*) 24 июля 2024 г. 1.8.1 - - 1.9.0-альфа01
коллекция 24 июля 2024 г. 1.4.2 - - -
хранилище данных 1 мая 2024 г. 1.1.1 - - - Документация
жизненный цикл (*) 24 июля 2024 г. 2.8.4 - - -
пейджинг (*) 24 июля 2024 г. 3.3.1 - - -
комната 10 июля 2024 г. 2.6.1 - - 2.7.0-альфа05 Документация
Склайт 10 июля 2024 г. 2.4.0 - - 2.5.0-альфа05 Документация

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

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

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

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

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

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

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