Start Debugging
2026-01-23 flutter Edit on GitHub

Windows から Flutter iOS をデバッグする: 実機ワークフロー (Flutter 3.x)

Windows から Flutter iOS アプリをデバッグするための実用的なワークフロー: ビルドは GitHub Actions の macOS にオフロードし、IPA を実機 iPhone にインストールして、flutter attach で hot reload と DevTools を使います。

数週間ごとに、同じ痛点が再浮上します: “私は Windows です。実機の iPhone で Flutter iOS アプリをデバッグしたい。本当に Mac が必要ですか?”。直近の r/FlutterDev の投稿では、実用的な回避策が提案されています: iOS のビルドを GitHub Actions の macOS にオフロードし、Windows からインストールしてアタッチしてデバッグするというものです: https://www.reddit.com/r/FlutterDev/comments/1qkm5pd/develop_flutter_ios_apps_on_windows_with_a_real/

その背後にあるオープンソースプロジェクトはこちらです: https://github.com/MobAI-App/ios-builder

問題を分割する: macOS でビルド、Windows でデバッグ

iOS には 2 つの厳しい制約があります。

しかし Flutter のデバッグは、ほぼ “実行中のアプリにアタッチして VM service と話す” というものです。つまり、デバッグ可能なアプリを端末に届けられるなら、ビルドとインストールを開発者ループから切り離せます。

投稿で説明されている流れはこうです。

IPA を生成する最小限の GitHub Actions ビルド

これがすべてではありません (署名はそれ自体が別のうさぎ穴です)。ただし、要となる考え方は示せます: macOS ランナーがビルドして成果物をアップロードします。

name: ios-ipa
on:
  workflow_dispatch:
jobs:
  build:
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v4
      - uses: subosito/flutter-action@v2
        with:
          channel: stable
      - run: flutter pub get
      - run: flutter build ipa --debug --no-codesign
      - uses: actions/upload-artifact@v4
        with:
          name: ios-ipa
          path: build/ios/ipa/*.ipa

--no-codesign が許容できるかどうかは、どうインストールするかによります。実機向けの多くの経路では、デバッグフローでも何らかの段階で署名が必要です。

Windows 側のループ: インストールしてアタッチする

iPhone でアプリがインストールされて動き出せば、Flutter 側は通常通りになります。

# From Windows
flutter devices
flutter attach -d <device-id>

Hot reload が機能するのは、同じマシンでビルドしたからではなく、デバッグセッションにアタッチしているからです。

最初からトレードオフを理解する

このワークフローは便利ですが、魔法ではありません。

オリジナルの記事と、これを引き起こしたリポジトリが欲しい場合はこちらから始めてください: https://github.com/MobAI-App/ios-builder。iOS デバッグに関する Flutter の公式ガイドについては、プラットフォームのドキュメントも近くに置いておきましょう: https://docs.flutter.dev/platform-integration/ios/ios-debugging

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< 戻る