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-интерфейсы помечены в зависимости от их доступности для общего кода, Android и Native. Вы также можете фильтровать объявления по платформам вверху каждой страницы.
Репозиторий kotlin-multiplatform-samples на GitHub демонстрирует некоторые функциональные возможности этих библиотек.
Если у вас есть отзывы об этих библиотеках, поделитесь ими через систему отслеживания проблем .
Инструментальная поддержка
Вы можете открывать, редактировать и запускать многоплатформенные проекты в Android Studio. Однако некоторые функции IDE для этих проектов пока недоступны. Чтобы создать новый проект, используйте мастер Kotlin Multiplatform от Jetbrains .
Мы также обеспечиваем совместимость плагина Android Gradle с мультиплатформой Kotlin, тестируя основные сценарии для новых выпусков.