Googleログインで発生した [Error: DEVELOPER_ERROR] を解決する

React NativeのAndroid開発で、Googleログインを実装していたが、以下のようなエラーが出た。

[Error: DEVELOPER_ERROR]

FirebaseのAndroidアプリに SHA 証明書フィンガープリント が設定されていないのが原因っぽいので登録する。以下のコマンドでキーストアファイルの中身を見る。

 keytool -list -v -keystore ./android/app/debug.keystore -alias androiddebugkey -storepass android -keypass android

./android/app/debug.keystore の部分は ~/android/debug.keystore の可能性もあるので、パスを注意する。

この中のSHA1をSHA 証明書フィンガープリントに登録する。

これで開発環境のログインは成功する。

ただ、Google Play Consoleからデプロイした本番環境の製品だと上記の手順(キーストアファイルは本番のもの)で試しても失敗する。

Google Play Consoleからリリースする際、App Signingという再署名されるプロセスがあり、ビルドした時署名と、リリースされる時の署名は異なる。

なので、Play Consoleから該当のアプリページへ行き、左タブの [設定] -> [アプリの署名] からSHA1を見つけて、それを登録する。