3

利用可能なオンライン ドキュメントとこのビデオを使用して: https://www.youtube.com/watch?v=0ucjYG_JrEE、新しい UI Auth ライブラリの適用を開始しようとしています。メールのサインインはうまく機能しますが、Google のサインインは機能しません。警告が表示され、UI に「読み込み中...」ダイアログが表示され続けます。

final FirebaseAuth auth = FirebaseAuth.getInstance();
        auth.addAuthStateListener(new FirebaseAuth.AuthStateListener() {
            @Override
            public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                FirebaseUser usr = firebaseAuth.getCurrentUser();

                if (usr != null){
                    Log.d( TAG, "User signed in correctly: " + usr );
                    auth.removeAuthStateListener( this );
                } else {
                    //signed out
                    Log.d( TAG, "User is not signed in" );
                    auth.removeAuthStateListener( this );

                    startActivityForResult( AuthUI.getInstance().createSignInIntentBuilder()
                            .setTheme( R.style.AppBaseTheme )
                            .setProviders(
                                    AuthUI.EMAIL_PROVIDER,
                                    AuthUI.GOOGLE_PROVIDER
                            ).build(), RC_SIGN_IN );


                }
            }
        });

出力:

05-21 13:49:33.595 25005-25005/com.xxx.xxx W/AuthMethodPicker: Firebase login unsuccessful

より多くのログ出力が役立ちます。これは、新しく作成された Firebase プロジェクトではなく、インポートされた Firebase プロジェクトでのみ発生することに注意してください。

更新:コンソールでこれを発見しました:

05-22 14:29:58.178 10075-10310/? V/BaseAuthAsyncOperation: access token request successful
05-22 14:29:58.179 10075-10310/? V/AuthAccountOperation: id token is requested.
05-22 14:29:58.758 10075-10310/? E/TokenRequestor: You have wrong OAuth2 related configurations, please check. Detailed error: INVALID_AUDIENCE
05-22 14:29:58.758 10075-10310/? D/AuthAccountOperation: id token request failed.
4

2 に答える 2

4

この問題の原因が見つかりました: 私のアプリは、デバッグ APK の署名に予期しない (間違った) debug.keystore を使用しました... ビルド内で正しい debug.keystore を指定した後、すべてが期待どおりに動作します!

(このスレッドのおかげで答えが見つかりました:Android Studio - debug keystore

Ps UI Auth ソリューションを提供してくれた Google/Firebase チームに感謝します。これは大きな改善です!

于 2016-05-22T13:04:55.523 に答える
1

リリースビルドでこれを取得する人向け。Firebase プロジェクト設定に正しい SHA1 フィンガープリントがあることを確認してください。

デバッグ キーストアとリリース キーストアのフィンガープリントは異なることに注意してください。

正しいフィンガープリントを取得する方法は次のとおりです: https://developers.google.com/android/guides/client-auth

于 2016-08-15T09:51:28.463 に答える