ошибка: несовместимые типы: невозможно преобразовать в OnCompleteListener <AuthResult>erro - PullRequest
0 голосов
/ 05 февраля 2020

Ниже приведен код. У меня нет большого опыта в кодировании. Надеюсь, вы могли бы помочь мне! Большое спасибо =)

Моя ошибка:

ошибка: несовместимые типы:> не может быть преобразован в OnCompleteListener

 //Register new User
            auth.createUserWithEmailAndPassword(edtEmail.getText().toString(),edtPassword.getText().toString())
                    .addOnCompleteListener(new OnSuccessListener<AuthResult>() {

                        @Override
                        public void onSuccess(AuthResult authResult) {
                            //Save user to db
                            User user = new User();
                            user.setEmail(edtEmail.getText().toString());
                            user.setName(edtName.getText().toString());
                            user.setPhone(edtPhone.getText().toString());
                            user.setPassword(edtPassword.getText().toString());

                            //User email to key
                            users.child(user.getEmail())
                                    .setValue(user)
                                    .addOnSuccessListener(new OnSuccessListener<Void>(){
                                        @Override
                                        public void onSuccess(Void aVoid) {
                                            Snackbar.make(rootLayout, "Register successful !!! ", Snackbar.LENGTH_SHORT)
                                                    .show();
                                        }

                                }).addOnFailureListener(new OnFailureListener() {
                                @Override
                                public void onFailure(@NonNull Exception e) {
                                    Snackbar.make(rootLayout,"Failed "+e.getMessage(),Snackbar.LENGTH_SHORT)
                                            .show();
                                }
                            })
                        }
                    })
            .addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    Snackbar.make(rootLayout,"Failed "+e.getMessage(),Snackbar.LENGTH_SHORT)
                            .show();
                }
            });
        }

    }); 

1 Ответ

2 голосов
/ 05 февраля 2020

В качестве трассировки стека предлагается использовать addOnSuccessListener вместо addOnCompleteListener, как показано ниже:

auth.createUserWithEmailAndPassword(edtEmail.getText().toString(),edtPassword.getText().toString())
        .addOnSuccessListener(new OnSuccessListener<AuthResult>() {

            @Override
            public void onSuccess(AuthResult authResult) {
                //Save user to db
                ....
            }
        })
        .addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {
                ....
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...