複数Flavorに対応したFlutterにFirebaseを導入する
Firebaseの設定
Firebaseプロジェクトはすでに作成されている前提で記載している。
セットアップ
とりあえずこれ試した
iOSシミュレータでアプリを実行すると以下のエラーとなる
Error (Xcode): Unable to load contents of file list: '/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-development-input-files.xcfilelist'
色々した挙句、Flavor設定後かつFirebaseの設定をしていないコミットまで戻り以下を実行
上記のエラーは消えたが、
Waiting for VM Service port to be available...
から動かなくなる
iOSシミュレータの再起動で解消。
Flavor対応のため作成したios/config
をXcodeにドラッグ&ドロップして、アプリを実行すると別のエラーが発生。
Error (Xcode): Multiple commands produce '.../build/ios/Debug-development-iphonesimulator/Runner.app/GoogleService-Info.plist'
下記を実施してみる。
エラーは解消した。。。
ただし、処理していた工程を除いたため大丈夫だろうか
⇧ config追加時はデフォルト設定。xcodeに追加するとbuildphaseにbundle対象のファイルとして追加されるようだ。
flutterfireで構成しているので、FlutterFire: "flutterfire bundle-service-file"でバンドルするので削除が不安だったが問題なさそうだ
Google Sign-Inを実装する
Supabaseをバックエンドとしているため、以下の記事を参考に進める
- Firebaseのログイン方法にあるGoogleプロバイダを有効にする。
- Androidは、証明書のフィンガープリントを追加する。注意点として、リリースしたアプリの署名はPlay署名になるので、別途フィンガープリントの登録が必要。
Androidフィンガープリント取得方法
上記設定後、Flutterfireによる設定ファイルの更新を行おうとすると以下のエラーが発生。
`PBXGroup` attempted to initialize an object with unknown ISA `PBXFileSystemSynchronizedRootGroup` from attributes
config
をXcodeに追加する際に、Folderとして追加したのが問題だったようだ。
Groupに変換したところ上記エラーは解消した
- iOSは設定ファイルを更新する