私のアプリは、登録時に新規ユーザの認証に失敗します。アプリケーションがGoogle Firebaseに接続されていて、何も問題がないようです。コードも問題なく表示され、エラーは表示されず、10000000回すべてをチェックしました。必要なものはすべて既にインポートされています。新しいユーザーを登録しようとすると、「内部エラーが発生しました。アクセスが設定されていません。Google Identity Toolkit APIがプロジェクトで使用されていません。このAPIを最近有効にした場合は、アクションが我々システムに伝播して再試行するまで数分お待ちください)認証を設定します昨日、あなたのAndroidアプリのgoogle-services.json
ファイルには、認証では、Googleのログインを有効にしているためFirebaseコンソールプロジェクトと同じでなければなりませんでproject_id
Firebase認証の無限の失敗
public class RegisterUserActivity extends AppCompatActivity {
//DECLARE FIELDS
EditText userEmailCreateEditText, userPassWordCreateEditText;
LinearLayout createAccountBtn;
//FIREBASE AUTHENTICATION ID
FirebaseAuth mAuth;
FirebaseAuth.AuthStateListener mAuthListener;
//PROGRESS DIALOG
ProgressDialog mProgressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register_user);
//ASSIGN ID'S
userEmailCreateEditText = (EditText) findViewById(R.id.emailRegisterEditText);
userPassWordCreateEditText = (EditText) findViewById(R.id.passwordRegisterEditText);
createAccountBtn = (LinearLayout) findViewById(R.id.createAccountSubmitBtn);
//PROGRESS DIALOG INSTANCE
mProgressDialog = new ProgressDialog(this);
//FIREBASE INSTANCE
mAuth = FirebaseAuth.getInstance();
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
//CHECK USER
FirebaseUser user = firebaseAuth.getCurrentUser();
if(user != null)
{
Intent moveToHome = new Intent(RegisterUserActivity.this, Home.class);
moveToHome.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(moveToHome);
}
}
};
mAuth.addAuthStateListener(mAuthListener);
//CREATE ON CLICK LISTENER
createAccountBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mProgressDialog.setTitle("Create Account");
mProgressDialog.setMessage("Wait while the account is being created..");
mProgressDialog.show();
createUserAccount();
}
});
}
@Override
protected void onStart() {
super.onStart();
mAuth.addAuthStateListener(mAuthListener);
}
@Override
protected void onStop() {
super.onStop();
mAuth.removeAuthStateListener(mAuthListener);
}
//LOGIC FOR CREATING THE USER ACCOUNT
private void createUserAccount() {
String emailUser, passUser;
emailUser = userEmailCreateEditText.getText().toString().trim();
passUser = userPassWordCreateEditText.getText().toString().trim();
if(!TextUtils.isEmpty(emailUser) && !TextUtils.isEmpty(passUser))
{
mAuth.createUserWithEmailAndPassword(emailUser, passUser).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful())
{
Toast.makeText(RegisterUserActivity.this, "Account created Success", Toast.LENGTH_LONG).show();
mProgressDialog.dismiss();
Intent moveToHome = new Intent(RegisterUserActivity.this, Home.class);
moveToHome.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(moveToHome);
}else
{
Toast.makeText(RegisterUserActivity.this, task.getException().getMessage(), Toast.LENGTH_LONG).show();
mProgressDialog.dismiss();
task.getException().getMessage();
}
}
});
}
}
}
あなたはそれが言ったことを行い、あなたのプロジェクトのダッシュボードでGoogle認証を有効にしましたか? –
確かに、電子メール/パスワードとGoogle認証の両方を有効にしました。 –
Firebaseサポートに連絡して診断できるようにしたい場合があります。 https://firebase.google.com/support/contact/troubleshooting/ –