🔑

【デバッグ用】複数人でFirebase開発を行う場合のフィンガープリント登録手順

2025/03/11に公開

はじめに

複数人でFirebaseを利用したAndroidアプリを開発していると、各自のローカル環境ごとにSHA-1フィンガープリントを登録する必要があります。
特にGoogleサインインやメールリンク認証などを利用する場合、フィンガープリントが一致しないと認証エラーが発生してしまうため注意が必要です。

実際にメンバーにFlutterアプリの開発に関わってもらった際にこの問題が生じました。
この記事では、備忘録としてFirebaseにデバッグ用フィンガープリントを追加登録する手順をまとめています。

1. フィンガープリント(SHA-1)の取得方法

1-1. keytoolコマンドを使う方法

下記のコマンドを実行することで、指定したキーストアからフィンガープリント(SHA-1など)を取得できます。

  • Windowsの場合
keytool -list -v \
-alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
  • Macの場合
keytool -list -v \
-alias androiddebugkey -keystore ~/.android/debug.keystore
  • %USERPROFILE% の部分は、実行する環境の実際のパスに置き換えてください。
  • コマンド実行後、SHA-1 フィンガープリントを確認できます。

1-2. GradleタスクsigningReportを使う方法

Android Studioのターミナル、またはコマンドラインでプロジェクトのルートディレクトリに移動し、以下を実行すると、ビルド設定に応じて自動的にフィンガープリント情報が表示されます。
おそらくこちらの方が簡単です。

./gradlew signingReport

実行結果の中に、Variant: debug や Variant: release ごとに SHA-1 フィンガープリントが出力されます。
開発中はデバッグビルドを利用するケースが多いので、debug の欄を確認してください。

2. Firebaseプロジェクトへの登録

  1. Firebaseコンソールを開き、対象プロジェクトの 「プロジェクトの設定」 を選択します。
  2. 「全般」タブで下にスクロールし、「Androidアプリ」 の設定を探します。
  3. 「SHA証明書フィンガープリント」のセクションにある 「フィンガープリントを追加」 ボタンをクリックします。
  4. 手順1または2で取得したSHA-1フィンガープリントをペーストして保存します。

3. 注意点

  • デバッグ用キーストアとリリース用キーストアは異なるファイルであるため、それぞれのSHA-1を別々に登録する必要があります。
  • 複数人で開発している場合、各自のローカル環境ごとにSHA-1フィンガープリントを取得し、登録を行ってください。
  • Googleサインインやメールリンク認証など、一部の認証方法では、登録が正しく行われていないと 「This operation is not valid.」 などのエラーになることがあります。
    必ず各環境のフィンガープリントが登録されているか確認しましょう。

4.まとめ

チーム開発において、Firebase認証を利用する場合は各開発者のデバッグ用フィンガープリントを全員分登録しておくことが大切です。
特に認証まわりのエラーが発生した際は、まずフィンガープリントが正しく設定されているかをチェックしてみてください。

以上が、Firebaseで複数人開発時に必要なデバッグ用フィンガープリントの登録手順です。
簡単ではありますが、エラーを未然に防ぐために重要な作業なので、ぜひチームメンバーと共有しておきましょう。

参考文献

https://developers.google.com/android/guides/client-auth?authuser=0&hl=ja#using_gradles_signing_report

Discussion