こんにちは。flutterflow、とても便利ですよね。flutterflow x firebaseで高速で開発ができ、かつかなりのクオリティのアプリが開発できます。
ノーコード・ローコードとは思えないサクサク動くオシャレなアプリができます。
さて、そんなFlutterFlowですが、リリースし長期的に運用していくなら当然dev、stg、prodなどそれぞれの環境が必要ですよね。
今日はFlutterFlow x Firebaseの本番環境と開発環境について考えていきたいと思います。
現時点ではあまり便利な方法はない
残念ながら、私の知る限り今のところあまり良い方法がないように思えます。
現在の方法だと、手動でFirebaseのProjectIDを切り替えたりデプロイし直したりが必要となるので、ちょっと運用しにくいです、、、
(しかしそれはあくまで2024年5月16日現在の話で、FlutterFlowの成長スピードを鑑みると半年後くらいにはすぐ便利機能がリリースされるのでは、と期待しています)
とはいえ、今はそれしかないと思うので、その方法を書いていきたいと思います。
↑訂正 ※2024年9月26日追記
上記を訂正します。FlutterFlow 5.0がリリースされ、新機能として「Development Environments」が発表されました!
これにより、以下のような良く無い方法ではなくもっと簡単に開発環境やステージング環境、本番環境が切り替えられるようになりました。
記事にまとめましたのでこちら↓をご覧ください。
【FlutterFlow】開発環境と本番環境を切り替える方法(FlutterFlow 5.0の新機能)
↓↓↓以下は旧版(2024/05/16時点)の記事になります。↓↓↓
準備
0.アプリを開発
まずは普通にFlutterFlow x Firebase(本番環境)でアプリを開発します。
1. アプリをストアにリリース。
Apple、Googleのストアにリリースしたりします。
2. テスト環境用のFirebase Projectを作る
2-1. 以下のAdd Firebase to an existing projectを参考に、新規にテスト環境用のFirebaseプロジェクトを作成します。
まずFirebaseプロジェクトを作ります。その後、以下のようにfirebase@flutterflow.ioのユーザーを作り、あadvanced permissionからcloud function adminやservice account userを追加するのを忘れないようにしましょう。

FirestoreデータベースやStorageのcreateも忘れずに。
2-2. Push通知の設定
Project SettingのCloud MessagingからAPNs Authentication Keyを登録
本番環境から開発環境への切り替え方法
では準備ができたら以下のような設定をしていきましょう。
3. アプリを本番からテスト環境に切り替える
3-1. FlutterFlowからFirebase Project IDをRemoveし、テスト環境用のProjectIDを設定する。

3-2. Regenerate Config Filesを押下

3-3. Firestore Indexes、Delete User References(Functions)、Firestore Rulesをデプロイ

3-3. プッシュ通知をデプロイ

3-4. クラウドファンクションなどをデプロイ
4. AppStoreにあげてtestflightや、APKファイルで動作確認。
上記が無事終わればあとは動作確認をするだけです。
本番環境に戻す時
戻す際は上記と同じことをやるだけです。Firebase Project IDをRemoveして本番用のIDに書き換え、Config FileをRegenerateし、Firestore RuleやPush通知などをデプロイし直します
ちょっと手間ですが、こんな感じだと思います。
FlutterFlow・Firebaseで本番/テスト環境の切り替え
いかがでしたでしょうか。これらの切り替えを手動でやるのはちょっと手間ですよね。。
ただ、FlutterFlowはアプリ側のブランチ開発の仕組みも作っていますし、単純な実装できる機能だけにフォーカスしているわけではなく、こういった運用や開発しやすさの改善も強く意識してくれているのを感じます。
ですので、遠くない未来にもっと便利な方法が作られることを期待しましょう!
Youtube動画での解説はこちら
FlutterFlowによるFirebaseの本番環境・開発環境の切り替えについて、Youtube動画でも解説しています。(といっても結構端折って話してるので大した情報量ではないですが...)
ご参考まで。
アプリ・Webサービスの開発の無料相談はこちら
FlutterFlow、bubble、Adalo、STUDIOなどのノーコードツールを使うことで、リスクを抑えて低コストでスピーディにビジネスアイデアを形にすることができます。
弊社はスタートアップ・新規事業向けにコストを抑えた最速のアプリ・Webサービスの開発、さらにはサービス立ち上げのコンサルティングから提案を行なっております。
また、法人向けにノーコードのスクール事業を通して内製化のサポートも行っています。
アプリ、Webサービス、LPなどの構築に興味のある方は、こちらからご気軽にご相談ください。
