Firebase Android: Ein interner Fehler ist aufgetreten. [OPERATION_NOT_ALLOWED]

Wenn ich mich in meiner Anwendung über Google anmelde, tritt dieser Fehler auf:

Ein interner Fehler ist aufgetreten. [OPERATION_NOT_ALLOWED]

Ich habe Google in der Firebase-Konsole aktiviert. Die Berechtigungen sind korrekt, und ich kann das Problem anscheinend nicht finden. Ich bin mir sicher, dass dies nichts mit meinem Code zu tun hat, aber wenn es mir sagt.

SignInactivity:

@Override
public void onClick(View v) {
    switch (v.getId()) {
        case R.id.sign_in_button:
            signIn();
            break;
    }
}

private void signIn() {
    Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
    startActivityForResult(signInIntent, RC_SIGN_IN);
}

@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
    // An unresolvable error has occurred and Google APIs (including Sign-In) will not
    // be available.
    Log.d(TAG, "onConnectionFailed:" + connectionResult);
    Toast.makeText(this, "Google Play Services error.", Toast.LENGTH_SHORT).show();
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...);
    if (requestCode == RC_SIGN_IN) {
        GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
        if (result.isSuccess()) {
            // Google Sign In was successful, authenticate with Firebase
            GoogleSignInAccount account = result.getSignInAccount();
            firebaseAuthWithGoogle(account);
        } else {
            // Google Sign In failed
            Log.e(TAG, "Google Sign In failed.");
        }
    }
}

private void firebaseAuthWithGoogle(GoogleSignInAccount acct) {
    Log.d(TAG, "firebaseAuthWithGooogle:" + acct.getId());
    AuthCredential credential = GoogleAuthProvider.getCredential(acct.getIdToken(), null);
    mFirebaseAuth.signInWithCredential(credential).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {

       @Override
       public void onComplete(@NonNull Task<AuthResult> task) {
           Log.d(TAG, "signInWithCredential:onComplete:" + task.isSuccessful());

           // If sign in fails, display a message to the user. If sign in succeeds
           // the auth state listener will be notified and logic to handle the
           // signed in user can be handled in the listener.
           if (!task.isSuccessful()) {
               Log.w(TAG, "signInWithCredential", task.getException());
               Toast.makeText(SignInActivity.this, "Authentication failed: " + task.getException(),
                       Toast.LENGTH_SHORT).show();
           } else {
               startActivity(new Intent(SignInActivity.this, MainActivity.class));
               finish();
           }
       }
    );
}

Antworten auf die Frage(12)

Ihre Antwort auf die Frage