Flutter は Windows と Linux で動作しますが、iOS アプリのビルドとリリースには依然として macOS 上の Xcode が必要です。ここでは、Mac を購入することなく、リモート Mac で iOS 側をカバーする方法をご紹介します。
リモート Mac を入手するFlutter は真にクロスプラットフォームであり、Android 向けの開発は Windows や Linux だけで完結できます。例外は iOS です。flutter build ios、CocoaPods、コード署名、App Store へのアップロードは、いずれも macOS 専用の Xcode を必要とします。リモート Mac があれば、自分のマシンでコーディングを続けながら、その環境を必要なときに利用できます。
Windows や Linux で開発する場合に、署名済みの Flutter iOS ビルドを作成する 3 つの現実的な方法。
自分で操作できる完全な macOS+Xcode。Mac 上の iOS シミュレータに対して flutter run を実行し、そのままそこでビルドと署名を行います。デバッグや実機テストに最適です。
Codemagic は自動リリースビルドにおいて Flutter との相性が良いですが、反復的なデバッグや単発の署名には扱いにくい面があります。
常に選択肢ではありますが、初期費用に加えてメンテナンスも必要です。作業のうち iOS の部分だけに macOS が必要なのであれば、過剰です。
リモート Mac を使えば、Flutter の iOS ワークフローはローカルの Mac とまったく同じです。接続するだけで済みます。
Mac をプロビジョニングし、VNC(GUI)または SSH(ターミナル)で接続します。Xcode と Command Line Tools はプリインストール済みです。
Flutter SDK をインストールし、flutter doctor を実行します。sudo gem install cocoapods で CocoaPods をインストールし、続いて cd ios && pod install を実行します。
flutter run を実行すると、Mac 上の iOS シミュレータでアプリが起動します。VNC 経由で操作でき、ホットリロードもいつもとまったく同じように動作します。
flutter build ipa を実行し、Apple Developer 証明書で署名して、Xcode、Transporter、または Fastlane でアップロードします。App Store 公開ガイドをご覧ください。
flutter build ipa が高速に、シミュレータも軽快に動作します。Windows や Linux で開発はできますが、iOS のビルド、署名、App Store へのアップロードには macOS 上の Xcode が必要です。リモート Mac は、まさにこれらのステップをカバーします。
はい。TestFlight や App Store へのリリースには、ビルド方法にかかわらず Apple Developer Program のメンバーシップ(年額 $99)が必要です。
はい。iOS シミュレータはリモート Mac 上で動作し、VNC 経由で表示できます。ホットリロードとホットリスタートは、ローカルの場合とまったく同じように動作します。
プランは Mac Mini M4 で月額 $85 から。iOS ビルドのためだけに Mac を購入するよりもはるかに安価です。料金をご覧ください。