このあたりを参考にデバッグ環境でGoogleログインを実装して詰まった箇所を記録します。
手順通りフィンガープリントを作成しアプリに追加したのですが、ログインを試みると
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: [firebase_auth/invalid-credential] access_token audience is not for this project
というエラーが発生してしまいます。
google-service.jsonを使用せずfirebaseOptionsで開発と本番の切り替えを行なっているので、更新されたgoogle-service.jsonに必要な情報があるのではないか...?
などと最初は考えていたのですが、特に追加で取り込む必要のあるものはないようでした。
結果として、firebaseコンソールに出ている
「このパッケージ名と SHA-1 の組み合わせを持つ OAuth2 クライアントは、別のプロジェクトに既に存在します」
というアラートを解決してあげることが必要でした。
本番と開発のマイアプリのパッケージ名を同じ名前にしており、同じフィンガープリントを登録していたことでこのアラートが発生したようです。
firebaseコンソール上からフィンガープリントを削除してもGoogle cluod console -> 認証情報 -> OAuth 2.0 クライアント IDに設定が残ってしまっているので開発と本番のどちらかのクライアントIDを削除してあげればOKです。
パッケージIDは開発と本番で違う名前をつけてあげたほうがよさそうです!
※追記
releaseとdebugでは違うフィンガープリントを使用しているようでした
こちらの方法releaseのでSHA1を取得してfirebaコンソールに登録する必要がありました。