FlutterFlowを2つつなげた際、FilestoreDataManegerの2個目のデータ表示が空欄になる問題を解決する

こんにちは、NoCodeCampのツバサです。

今日は、複数のFlutterFlowアプリを同一のFirebaseに接続する際に、FirestoreDataManegerが見えなくなるんだよなー。という点を解決したので、記事にします。見えなくても実際の動作に支障はありませんが、データの管理が見やすい方が、みんないいですよね。

問題:このFirestoreDataManegerが、ブランクになってデータを見ることができません。

事前準備

  1. 複数のFlutterFlowアプリを同一のFirebaseに接続していること
  2. FilestoreDataManegerを使用していること

今回は、複数のFlutterFlowのアプリを1個のFirebaseに接続した場合のみ起こる現象です。通常の1個目のサービスを作る方は、対象外です。

FilestoreManegerが空欄になる

1個目は、問題なく表示されるのですが、二個目以降は、

Could not create an account as firebase@flutterflow.io to your Firebase project.

Make sure “Email Sign-In” is turned on for your Firebase project, and try again.

となり、すべてのDataが表示されません。これを解決していきます。

解決方法

このような現象が起きる理由は、FlutterFlowとFirebaseの認証システムの相互作用にあると考えられます。FlutterFlowは、アプリ開発を簡素化するために、Firebaseとの連携を自動化しています。この自動化プロセスの一部として、FlutterFlowはfirebase@flutterflow.ioのアドレスを使用して認証を行っています。

しかし、複数のFlutterFlowアプリを同一のFirebaseに接続する場合、この自動化プロセスが適切に機能しない可能性があります。各アプリが独自にfirebase@flutterflow.ioのアドレスを作成しようとするため、認証の競合が発生し、FilestoreDataManegerが正しくデータを表示できなくなっているようです。

この問題を解決するには、firebase@flutterflow.ioアドレスを一旦削除し、再度Flutterflowのアプリケーション側から追加する必要があります。これにより、FlutterFlowとFirebaseの認証システムが正しく同期され、FilestoreDataManegerが期待通りに機能するようになります。

具体的には、手順で解決します。

1.Firebaseにアクセスし、Authenticationのページを開く
2. firebase@flutterflow.io のアドレスを探し削除する
3.再度、firebase@flutterflow.ioのアドレスをAuthenticationに追加する
FlutterFlowアプリを再起動し、FilestoreDataManegerのデータが正しく表示されることを確認する

まとめ

FlutterFlowアプリ開発において、複数のアプリを同一のFirebaseに接続することには、メリットとデメリットがあります。

メリット

  1. データの一元管理:複数のアプリが同じデータベースを共有することで、データの一貫性が保たれ、管理が容易になります。
  2. 開発コストの削減:Firebaseの設定を再利用できるため、新しいアプリを開発する際の手間が省けます。
  3. ユーザー認証の共有:同一のFirebaseプロジェクトを使用することで、ユーザー認証情報を共有でき、ユーザーにとって便利

デメリット

認証の競合:今回の事例のように、FlutterFlowとFirebaseの認証システムの相互作用によって、予期せぬ問題が発生する可能性

Firebaseが自動的にCreateされるようになって半年くらい経ちましたが、また、Firebaseを少しずつ触って行こうと思います。(Supabaseの方が楽かもしれない。。)

    この記事を書いた人

    tsubasatwi( つばさ)

    国立工業高専卒業(新居浜工業高等専門学校)
    「イベント×IT×営業」のカスタマーサクセスマネージャーとして活躍。セールス→構築管理運用まで全体プロジェクト管理の豊富な経験あり。

    ・主にITに関するイベント集客/法人営業/開発を担当
    ・大手通信会社を中心にエンタープライズのIT導入を担当(B2B)

    DMMで日本初の NoCodeサロン を運営
    「NoCodeCamp プログラミングを使わないIT開発 」
    https://lounge.dmm.com/detail/2549/