Kotlin

2026年版 Kotlin Multiplatform 開発環境とTODOアプリ入門ガイド

ⓘ本ページはプロモーションが含まれています

スポンサードリンク

1. 開発環境の要件とインストール手順

必須項目 推奨バージョン(2026 年 4 月現在)
JDK 17 以上(OpenJDK 17、Oracle JDK 17 等)
Android Studio Flamingo 2026.1(JetBrains が提供する最新安定版)
IntelliJ IDEA 2026 系列(Ultimate または Community)
Gradle 8.x 系列(KMP 用プラグインと互換性あり)
Kotlin 1.9.22(2026‑01 リリース)

ポイント:上記バージョンは JetBrains が公式にサポートしている最小ラインです。古い IDE や Gradle では KMP プラグインが正しく動作せず、ビルドエラーが頻発します。

1‑1. JDK の導入

  1. OpenJDK 17(AdoptOpenJDK・Eclipse Temurin 等)または Oracle JDK 17 を公式サイトからダウンロード。
  2. インストーラ実行後、java -version17.xxx と表示されることを確認。
  3. PATH 環境変数に JDK の bin ディレクトリが含まれているか最終チェック。

1‑2. Android Studio Flamingo 2026.1 のセットアップ

  1. JetBrains の公式ダウンロードページから Android Studio Flamingo 2026.1 を取得。
  2. インストーラに従いインストールし、起動時に「SDK Manager」へ遷移。
  3. 「SDK Platforms」タブで Android 15(API 35)以上 にチェックを入れ、必要な SDK コンポーネントをダウンロード。

1‑3. IntelliJ IDEA 2026 の導入とプラグイン設定

手順 操作内容
JetBrains Toolbox App 経由で IntelliJ IDEA 2026 をインストール。
Preferences → Plugins に移動し、Kotlin MultiplatformCompose Multiplatform が有効か確認。
File → New → Project で KMP 用テンプレートが表示されることをテスト。

2. プロジェクト作成ウィザードと標準ディレクトリ構造

2‑1. 新規 KMP プロジェクトの作成手順

  1. File → New → Project を選択し、テンプレート一覧から Kotlin Multiplatform をクリック。
  2. 「Compose Multiplatform」を利用したい場合はチェックを入れる(UI 共有コードが自動生成されます)。
  3. プロジェクト名・保存先を決めて Finish

2‑2. 標準的なモジュール構造

  • commonMain:データモデル、ビジネスロジック、Compose UI など、全プラットフォームで共通に使用。
  • androidMain / iosMain:それぞれの OS が提供する API(例:ContextNSFileManager)へのブリッジコードを配置。

ポイント:この三層構造は KMP 開発の基盤です。プラットフォーム固有コードと共通ロジックが明確に分離されることで、ビルド時の依存解決が自動化されます。


3. expect / actual と Gradle Kotlin DSL の設定

3‑1. expect / actual の基本概念

キーワード 用途
expect 共通コード側で API シグネチャを宣言。実装は各プラットフォームで提供。
actual androidMainiosMain で、expect が要求する具体的な実装を記述。

実装例(ログ出力)

3‑2. Gradle Kotlin DSL(build.gradle.kts)の典型的設定

ポイントkotlin("multiplatform") プラグインのバージョンは公式リリースに合わせて固定し、Gradle の 8.x 系列と組み合わせることでビルドエラーを回避できます。


4. ハンズオン実装例 ― TODO リストアプリ

以下では 共通ロジック + Compose UIcommonMain に集約し、Android と iOS の両方から同一コードを呼び出す手順を示します。

4‑1. データモデルとリポジトリ(commonMain

4‑2. Compose UI(commonMain

4‑3. Android エントリポイント(androidMain

4‑4. iOS エントリポイント(iosMain

ポイントTodoRepositoryTodoScreencommonMain にあるだけで、Android と iOS の両方から同一ロジックと UI を呼び出せます。これが KMP の最大の魅力です。


5. テスト・デバッグフロー

5‑1. JVM 単体テスト(commonTest

実行コマンド:

5‑2. Android デバッグ手順

  1. Run ボタンでエミュレータ(例:Pixel 7 API 35)を起動。
  2. LogcatKMP タグや println が出力されていれば、共有コードが正しく走っています。

5‑3. iOS Simulator デバッグ手順

  1. Xcode(15.4 以上)で iosApp プロジェクトを開く。
  2. Cmd + RiPhone 15 シミュレータを起動。
  3. コンソールに Kotlin の println と Swift の print が混在して表示されることを確認。

5‑4. ビルドエラー対策(よくあるケース)

エラーメッセージ 主な原因 解決策
Could not resolve all files for configuration ':iosX64MainRuntimeElements' Xcode Command Line Tools が未インストール ターミナルで xcode-select --install を実行
Unsupported Kotlin version Gradle で参照している Kotlin バージョンが古い build.gradle.ktskotlin("multiplatform") バージョンを 1.9.22 に固定
Compose resources not found(iOS) composeResources DSL が未設定 compose { resources { packageName = "com.example.shared" } }commonMain の Gradle 設定に追記

ポイント:公式 codelab や JetBrains のリリースノートは随時更新されます。特に 2025‑2026 年の大幅アップデート情報は必ずチェックしてください。


6. サンプルプロジェクトの取得とビルド

クローンしたリポジトリは README に沿って Android Studio と Xcode の両方で開くことができます。実行確認が取れたら、自分のアプリケーションに合わせてコードを拡張してみましょう。


7. まとめ

項目 内容
開発環境 JDK 17+、Android Studio Flamingo 2026.1、IntelliJ IDEA 2026、Gradle 8.x、Kotlin 1.9.22
プロジェクト構造 commonMain / androidMain / iosMain の三層でコードを分離
期待/実装 (expect/actual) プラットフォーム固有 API を安全に呼び出すための必須テクニック
Gradle 設定 kotlin("multiplatform")compose プラグインで XCFramework 生成を構成
ハンズオン例 TODO アプリで共通ロジック・Compose UI を commonMain に実装し、Android/iOS から呼び出すだけのシンプル構成
テスト & デバッグ JVM 単体テスト → Android エミュレータ → iOS Simulator の順に検証
ビルドエラー対策 Xcode CLI ツール、Kotlin バージョン固定、codelab 更新情報の確認が鍵
サンプル取得 公式 GitHub リポジトリからクローンし、./gradlew assembleDebugxcodebuild でビルド

この手順に沿って環境を整え、サンプルプロジェクトを動かすことで、2026 年版のツールチェーン下で Kotlin Multiplatform の基本的な流れとベストプラクティスを体感できます。次は実際のビジネスロジックや UI デザインに合わせてモジュールを拡張し、真のクロスプラットフォーム開発へとステップアップしてください。

スポンサードリンク

-Kotlin
-, , , , , , , , ,