यह वह हिस्सा है जहां मैं अद्वितीय उपयोगकर्ता आईडी का उपयोग करके डेटा अपडेट करने का प्रयास करता हूं। लेकिन यह हमेशा दिखाता है कि पंजीकरण करने में विफल रहता है, भले ही प्रमाणीकरण भाग काम कर रहा हो।

mAuth.createUserWithEmailAndPassword(email,password)
     .addOnCompleteListener(new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {

            if (task.isSuccessful())
            {
                user user=new user(
                nameOfUser,
                email,
                phNo
                );
                //Toast.makeText(Register_User.this, "Working", Toast.LENGTH_SHORT).show();

                mData.getReference("Users")
                        .child(Objects.requireNonNull(FirebaseAuth.getInstance().getCurrentUser()).getUid())
                        .push().setValue(user).addOnCompleteListener(new OnCompleteListener<Void>() {

                    @Override
                    public void onComplete(@NonNull Task<Void> task) {
                        progressBar.setVisibility(View.GONE);

                        Toast.makeText(Register_User.this, "Upto here", Toast.LENGTH_LONG).show();
                        if (task.isSuccessful()) {
                            Toast.makeText(Register_User.this, "Successfully Registered", Toast.LENGTH_SHORT).show();
                        } else {
                            Toast.makeText(Register_User.this, "Failed to Registered", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
            }
            else if (task.getException() instanceof FirebaseAuthUserCollisionException) {
                progressBar.setVisibility(View.GONE);
                Toast.makeText(getApplicationContext(), "You are already registered", Toast.LENGTH_SHORT).show();
            }
        }
    });
0
Roshan Singh 22 अक्टूबर 2018, 16:00

1 उत्तर

सबसे बढ़िया उत्तर

यदि कार्य विफल हो गया, तो इसमें एक अपवाद है जो आपको समस्या दिखाता है। आप वर्तमान में इसका किसी भी तरह से उपयोग नहीं कर रहे हैं, जबकि यह आपको समाधान की ओर संकेत कर सकता है:

if (task.isSuccessful()) {
    Toast.makeText(Register_User.this, "Successfully Registered", Toast.LENGTH_SHORT).show();
} else {
    Log.w(TAG, "Registering user failed", task.getException());
    Toast.makeText(Register_User.this, "Failed to Registered", Toast.LENGTH_SHORT).show();
}

में पासवर्ड आधारित खाता बनाएं भी देखें। फायरबेस दस्तावेज।

0
Frank van Puffelen 22 अक्टूबर 2018, 13:14