取り組んでいること
現在Android Studioで、Firebaseを用いたログイン処理を使ったアプリを開発しています。今回はGoogleのソーシャルログインのみを使用しています。
直面している課題
数日前に実装が完了し、実機にインストールしたところ問題なくログインできることが確認できました。
その後Google play storeにアプリを公開・テストを行ったところ、play storeからダウンロードしたものはなぜか
「サインインに失敗しました」
というトースト表示が出てログインが拒否されてしまいました。
この事象を解決したいです。
###該当コード
サインインのインテントは下記のコードで定義しています。
java
1public void createSignInIntent() { 2 // [START auth_fui_create_intent] 3 // Choose authentication providers 4 List<AuthUI.IdpConfig> providers = Arrays.asList( 5 new AuthUI.IdpConfig.GoogleBuilder().build() 6 ); 7 8 // Create and launch sign-in intent 9 startActivityForResult( 10 AuthUI.getInstance() 11 .createSignInIntentBuilder() 12 .setAvailableProviders(providers) 13 .build(), 14 RC_SIGN_IN); 15 // [END auth_fui_create_intent] 16 }
これをonCreateで呼び出しています。
そしてインテントの結果の受け取りは以下で定義しています。
Java
1protected void onActivityResult(int requestCode, int resultCode, Intent data) { 2 super.onActivityResult(requestCode, resultCode, data); 3 4 if (requestCode == RC_SIGN_IN) { 5 IdpResponse response = IdpResponse.fromResultIntent(data); 6 7 if (resultCode == RESULT_OK) { 8 // Successfully signed in 9 FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser(); 10 CheckUsers(user); 11 } else { 12 Toast.makeText(MainActivity.this,"サインインに失敗しました",Toast.LENGTH_LONG).show(); 13 } 14 } 15 //... 16}
上記のコードから分かるようにresultCodeがRESULT_OKになっていないため、ログインが完了していない模様です。
ご回答の方どうぞよろしくお願い致します。
追記(2020/8/25)
他の方より、ログイン失敗時にこちらにあるようなデバッグ方法を教えていただきました。先ほど実装し、現在play storeの審査待ちです。
追記(2020/8/26)
先ほどplay storeからダウンロードしたものを実行して、エラーコードを取得しました。
エラーコードは"10"でした.こちらのリンクを読む限り、SHA1の設定ミスが考えられるようですがこちらはきちんと設定したので他に原因があると考えられます。OAuth認証のミスという話も上記リンクの中にありますが、今回はauthUIを使用しこちらの設定は不要であったため特に心当たりがありません。
どうぞよろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。