Kotlin MultiplatformでiOS開発にMacは必要?2026年の初心者向けルート
Android側は動くのに、iosApp を実行しようとすると選べる端末が表示されません。
結論:Kotlin MultiplatformのiOS開発にMacは必要です。 Kotlinの文法、共有コード、Android側の実装はWindowsで進められますが、iOSアプリのビルド、実行、デバッグにはXcodeを搭載したmacOS環境が必要です。初心者は「Windowsで書く、必要なときだけMacでiOSを確認する」双方向ルートから始めるのが現実的です。
この内容は、WindowsパソコンだけでAndroid開発を始め、次にiOSも学びたいKotlin初学者向けです。AndroidとiOSの課題提出が必要な学生や、Xcode・iOS Simulatorで止まっている人にも適しています。
まず分けるべき「書く作業」と「動かす作業」
Kotlin Multiplatformは、同じ処理を複数のOSで共有しやすくする仕組みです。ただし、共有コードを書けることと、iOSアプリを実際に起動できることは別の話です。
Kotlin公式のFAQでは、共有コードの開発は対応するIDEで進められる一方、iOSアプリのビルドや実行にはApple側の開発環境が関係すると説明されています。Kotlin Multiplatform公式FAQも確認しておくと、Windowsでできる作業の境界を誤解しにくくなります。
| 作業 | Windows | macOS + Xcode |
|---|---|---|
| Kotlinの文法練習 | 可能 | 可能 |
commonMain の共有処理 |
可能 | 可能 |
| Androidアプリの実行 | 可能 | 可能 |
| iOSアプリのビルド | 不可 | 可能 |
| iOS Simulatorでの確認 | 不可 | 可能 |
| iOS専用機能のデバッグ | 制限あり | 可能 |
commonMain は、学校の「共通課題」に近い部分です。AndroidとiOSの両方で使う通信処理やデータ処理を置きます。一方、Android側とiOS側には、それぞれ異なる「答案用紙」があり、画面やOS固有機能は別途確認が必要です。
Windowsで先に進められる範囲
次の作業なら、Macを購入しなくても学習を開始できます。
- Kotlinの基本文法を覚える
- 共有処理を作る
- Android用の画面を作る
- Androidエミュレーターで動作を見る
- Gitでプロジェクトを保存する
- API通信やデータ変換を練習する
ただし、授業で iosApp を起動する、Apple向けの画面を確認する、iPhoneで試す、といった指示が出た時点で環境を切り替える必要があります。
Kotlin MultiplatformをWindowsで学び始める判断
「Kotlin MultiplatformはWindowsでも開発できるのか」という疑問には、共有部分とAndroid側に限れば可能と答えられます。iOS側まで一台のWindowsパソコンだけで完結させる方法として考えると、最初から行き詰まります。
Kotlin公式のMultiplatformクイックスタートでは、プロジェクトを作成し、共有コードと各プラットフォーム側を分けて扱う流れが示されています。ここで重要なのは、プロジェクトを作成できることと、Apple向けの実行環境が揃っていることは同じではない点です。
Xcodeを入れずに共有コードだけ書ける場合
commonMain のロジックだけを作る段階では、Xcodeは必須ではありません。たとえば、入力値の判定、JSONの変換、画面に渡すデータの整理などはWindowsで実装できます。
ただし、iOS側のFramework、つまり共有コードをiOSアプリから呼び出せる形にした成果物を確認する段階では、Appleのビルド環境が必要になります。コードが正しく見えても、iOS上で実際に動くとは限りません。
Windows学習を続けるかMacへ移るか
| 学習段階 | 主な確認内容 | 選びやすい環境 |
|---|---|---|
| Kotlin入門 | 文法、クラス、関数 | Windows |
| Android中心 | Android画面、エミュレーター | Windows |
| 共有処理 | commonMain のロジック |
Windows中心 |
| iOS起動 | iosApp、ビルド、実行 |
Macが必要 |
| Apple機能 | 通知、カメラ、権限 | Macが必要 |
| 真機・提出 | 署名、チーム設定、提出用ビルド | Macが必要 |
この分岐なら、学習初期にMacを買う必要があるかを落ち着いて判断できます。iOSの課題がまだ始まっていないなら、Windowsを使い続ける方が支出を抑えやすいでしょう。
iOS SimulatorとXcodeが必要になる境界
iOS Simulatorは、iPhoneの画面や動作をMac上で確認するための開発用環境です。WindowsのAndroidエミュレーターとは別物で、Windowsにインストールして代用するものではありません。
AppleのXcodeシステム要件を基準にすると、Xcodeと対応するmacOSの組み合わせを確認してから環境を用意する必要があります。2026年時点で確認対象となる安定版にはXcode 26.6が含まれますが、実際には授業やプロジェクトが指定するXcodeとmacOSの組み合わせを優先してください。
iOS専用機能では「ビルド成功」だけでは足りない
カメラ、通知、位置情報、ファイルアクセスなどを使う場合、共有コードがコンパイルできただけでは課題完了になりません。権限の表示、拒否した場合の画面、実機またはシミュレーター上の挙動を確認する必要があります。
この段階では、iOS専用コードとFrameworkの接続を確認し、Xcodeのログやブレークポイントで問題箇所を探します。Kotlinだけで書いた部分が正しくても、Apple側の設定やライフサイクル処理で問題が起きることがあります。
真機テストとアプリ提出は別の段階
学習用シミュレーターで動かすこと、登録したiPhoneで試すこと、ストア提出用に準備することは、それぞれ必要な作業が違います。
Appleの登録済みデバイスへの配布手順では、真機で動かすためのチーム設定や署名が関係します。また、配布準備の公式手順にも、提出前に確認すべき設定があります。
| 目的 | MacとXcode | Apple側の設定 |
|---|---|---|
| Kotlinの練習 | 不要 | 不要 |
| iOS Simulator確認 | 必要 | 基本的な開発設定 |
| 登録iPhoneで確認 | 必要 | チーム・署名設定 |
| ベータ配布 | 必要 | 配布用設定 |
| 正式提出 | 必要 | 配布と審査に向けた準備 |
そのため、最初から真機や提出まで考えてMacを買う必要はありません。授業が「Simulatorで画面を確認」するだけなら、必要な期間だけMac環境を使う選択肢があります。
WindowsとMacを使い分ける学習手順
Kotlin MultiplatformのiOS開発にMacは必要ですが、常にMacの前に座る必要があるとは限りません。初学者なら、次の順番で作業を分けると混乱しにくくなります。
1. WindowsでKotlinとAndroid側を作る
まずAndroid Studioなど、授業で指定された環境をWindowsに用意します。Kotlinの文法、共有処理、Android画面を作り、Android側で最低限の動作を確認します。
2. 共有部分をGitで保存する
プロジェクト全体を手動コピーするより、Gitで変更履歴を保存する方が安全です。個人情報や秘密鍵を含めないことも重要です。
git status
git add .
git commit -m "共有ロジックを更新"
git push
出力例は次のようになります。
[main 8f31a2c] 共有ロジックを更新
3 files changed
この番号や変更ファイル数は実行環境で変わります。表示される内容が異なっても、コミットが完了していれば問題ありません。
3. Mac側でプロジェクトを取得する
Macでは同じリポジトリを取得し、授業指定のXcodeとKotlin Multiplatform環境を確認します。Xcodeのバージョンがプロジェクトの指定と合わない場合は、先に授業資料を確認してください。
4. iosApp をXcodeで開く
Android Studioで編集した共有コードを、iOSアプリ側から呼び出します。Mac上でXcodeを起動し、対象のSchemeとiOS Simulatorを選びます。
5. 共有コードをiOS向けにビルドする
この段階で、Frameworkの生成、依存関係、iOS側の設定が確認されます。エラーが出た場合は、コードだけでなくmacOS、Xcode、SDK、依存ライブラリの組み合わせも確認します。
6. Simulatorで画面と機能を確認する
画面表示、入力、権限、通信エラーなどを確認します。カメラや通知のようにSimulatorでは再現しにくい機能は、授業の要件に応じて真機テストを検討します。
7. 変更を戻してAndroid側も再確認する
iOS側だけ直して共有コードを壊すことがあります。修正後はGitで保存し、WindowsのAndroid側でも再度ビルドします。
初心者向けの選択分岐
条件を先に決めると、Macを買うかどうかで迷いにくくなります。
- Kotlin文法とAndroidだけを学ぶ段階なら、Windowsを選びます。
- 共有コードを書き、月に数回だけiOSを確認するなら、Windowsと必要時のMacを組み合わせます。
- 毎週のようにiOS Simulatorでデバッグするなら、長期利用できるMac環境を検討します。
- 真機テスト、署名、アプリ提出が授業の必須条件なら、Xcodeを使えるMacを早めに確保します。
- 学校の管理端末でソフトを追加できないなら、無理に設定を回避せず、許可されたMac環境かSFTPMACの利用条件を確認します。
| 状況 | 推奨ルート | Mac購入の判断 |
|---|---|---|
| Android中心で学習中 | Windowsのみ | まだ急がない |
| iOS確認が時々ある | Windows + Macの短期利用 | 購入を保留 |
| iOS課題を毎週実施 | Mac環境を継続利用 | 利用頻度で比較 |
| 真機・提出まで必要 | Xcode搭載Mac | 長期利用を検討 |
Macを購入する場合も、授業で必要なmacOSとXcodeの組み合わせを先に確認します。購入前にMac miniのレンタル料金を比較するページを確認し、短期利用と長期利用のどちらが学習計画に合うかを比べる方法もあります。
遠隔Mac、クラウドビルド、Windows編集の違い
3つの方法は似て見えますが、できることが異なります。
| 方法 | できること | 初心者が確認すべき制限 |
|---|---|---|
| Windowsで編集 | 共有コードとAndroid開発 | iOSの実行環境はない |
| クラウドビルド | 条件に合うビルド処理 | Xcode画面の操作や細かなデバッグが難しい場合がある |
| 実機のMacへ接続 | Xcode、Simulator、設定を操作 | 接続方法、保存、利用時間を確認する |
授業で必要なのが単なるビルド結果だけなら、クラウド型の仕組みで足りる場合があります。しかし、Xcodeのエラーを読み、Simulatorの画面を操作し、iOS専用機能を確認するなら、実際のMac環境の方が学習内容に近くなります。
Macへ接続する場合は、SFTPMACのMac利用環境と接続方法を確認し、SSHやVNCなど授業に合う接続手段を選びます。学校のネットワークで接続が制限される場合は、事前に許可された通信方法を確認してください。
Windowsだけで続けるか、Macを使うか
Windowsだけで共有コードとAndroid開発を進める方法には、費用を抑えやすい利点があります。一方で、iOSの実行結果をその場で見られず、問題が共有コードにあるのか、Apple側の設定にあるのか判断しにくくなります。
Macを購入すれば作業は一台にまとまりますが、学習初期から使うとは限りません。使用頻度が低い学生にとっては、購入費、保管、OS更新、授業終了後の利用予定まで考える必要があります。
したがって、現時点でiOS課題がまだ少ないなら、Windowsを残して必要なときだけSFTPMACのMac環境を使う方が、学習目的に合う可能性があります。反対に、毎週長時間のiOSデバッグを行い、真機テストや提出まで継続するなら、自分専用のMacを含めて長期環境を比較すべきです。
今日決めるなら、授業資料を開いて次の3点を確認します。
iosAppの起動が課題に含まれているか。- iOS Simulatorだけでよいか、真機テストも必要か。
- iOS作業が一度だけか、毎週続くか。
一度だけならWindowsと短期のMac利用、毎週なら継続的なMac環境、Android中心ならWindowsのまま進めます。Kotlin MultiplatformのiOS開発にMacは必要ですが、学習開始時点からMacを購入する必要があるとは限りません。