※この記事はAppBundleで配信したアプリでGoogleSignInできないの記事をエクスポートしたものです。内容が古くなっている可能性があります。
概要
ローカルビルドやストア版だとGoogleSignInできるのにAndroidAppBundle(以下AAB)形式のテスト配信版ではできない問題が発生しました。テスト配信版でのみ発生することから、FirebaseとGooglePlayのリンク周りに問題があるのではないかと考えました。 ※AABをFirebaseAppDistributionでテスト配信するにはGooglePlayをFirebaseにリンクする必要があります。
原因
内部アプリ共有したAndroidアプリでGoogleSignInできなかった(ローカルやストア版はできる)けどPlayConsoleの設定>内部アプリ共有>内部テスト版証明書からSHA-1をコピーしてFirebaseに設定したらできた。
— たろす (@taroooth) April 2, 2022
AppBundleでのテスト配信はGooglePlayでは「内部テスト」の位置付けなのですが、その内部テストに必要な証明書がFirebaseプロジェクトに設定できていないことが原因でした。
対応
①GooglePlayConsole>設定>内部アプリ共有を開く
②内部テスト版証明書(SHA-1証明書のフィンガープリント)をコピー
③FirebaseConsole>プロジェクトの設定を開く
④先ほどコピーしたフィンガープリントを追加
⑤完了
まとめ
テスト配信版やストア版でしか発生しない不具合はログが見えないので原因の特定が難しいですが、不具合が発生する状況や発生しないバージョンとの差分を絞り込むことで原因を切り分けることが大事です。