Here is my idea: After registing, an email will be sent to the user. After the user verifies the email, the new account with user's info will be added to Firebase. If not, the account won't be added. But i don't know how to do it.
Here is my code:
auth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
FirebaseUser user = auth.getCurrentUser();
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
DatabaseReference usersRef = ref.child("shop").child("Users");
String userId = usersRef.push().getKey();
final Map<String, Object> dataMap = new HashMap<String, Object>();
Users temp=new Users(email,user.getUid(),fullname);
usersRef.child(user.getUid()).setValue(temp);
} else {
email_txt.setError(
"The email address is already in use by another account.");
}
}
});
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…