Kotlin マルチプラットフォーム(KMP)を使用すると、異なるプラットフォーム間で Kotlin コードを共有できます。Kotlin マルチプラットフォームは JetBrains によって開発されており、KMP を使用してモバイル プラットフォームをターゲットにすることで、安定しており、本番環境に対応できます。
マルチプラットフォームの Jetpack ライブラリ
Google では Kotlin マルチプラットフォームを使用しています。Android プラットフォームと iOS プラットフォーム間でビジネス ロジックを共有する場合は、KMP を使用することをおすすめします。
Google の Jetpack ライブラリの多くは、KMP を利用するためにすでに移行されています。これらのライブラリには、対応する Android ターゲットと同様の互換性が保証されています。
KMP をサポートする Jetpack ライブラリは次のとおりです。
Maven グループ ID | 最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース | ドキュメント |
---|---|---|---|---|---|---|
annotation(*) | 2024 年 6 月 26 日 | 1.8.0 | - | - | 1.9.0-alpha01 | |
collection | 2024 年 1 月 24 日 | 1.4.0 | - | - | - | |
datastore | 2024 年 5 月 1 日 | 1.1.1 | - | - | - | ドキュメント |
lifecycle(*) | 2024 年 6 月 12 日 | 2.8.2 | - | - | - | |
paging(*) | 2024 年 5 月 14 日 | 3.3.0 | - | - | - | |
room | 2024 年 6 月 12 日 | 2.6.1 | - | - | 2.7.0-alpha04 | ドキュメント |
sqlite | 2024 年 6 月 12 日 | 2.4.0 | - | - | 2.5.0-alpha04 | ドキュメント |
これらのライブラリのリファレンス ドキュメントでは、共通コード、Android、ネイティブで利用可能かどうかに基づいて API にマークを付けています。各ページの上部で、宣言をプラットフォーム別にフィルタすることもできます。
kotlin-multiplatform-samples GitHub リポジトリでは、これらのライブラリの機能の一部を紹介しています。
これらのライブラリに関するフィードバックがございましたら、Issue Tracker でお知らせください。
ツールのサポート
マルチプラットフォーム プロジェクトは、Android Studio で開いたり、編集したり、実行したりできます。ただし、IDE の一部の機能は、このプロジェクトでまだ利用できません。新しいプロジェクトを作成するには、Jetbrains の Kotlin マルチプラットフォーム ウィザードを使用します。
また、新しいリリースのコアシナリオをテストして、Android Gradle プラグインが Kotlin マルチプラットフォームと互換性があることを確認しています。