gpt4 book ai didi

android - 如何在 Android 中使用身份验证 Uid 从 FirebaseUser 获取用户名?

转载 作者:太空狗 更新时间:2023-10-29 13:49:40 24 4
gpt4 key购买 nike

我使用 createUserWithEmailAndPassword() 注册了一个用户,并使用 signInWithEmailAndPassword() 方法登录。现在,当我登录用户时,我需要获取存储在用户节点中的用户名 mobile。我可以获得每个用户的 UId,通过使用它如何在 android 中获取提到的信息?

最佳答案

您所要做的就是使用 UserProfileChangeRequest

 mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
// Sign in success
FirebaseUser user = mAuth.getCurrentUser();

UserProfileChangeRequest profileUpdates = new UserProfileChangeRequest.Builder()
.setDisplayName(mName).build();

user.updateProfile(profileUpdates).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Log.d(TAG, "User profile updated.");
}
}
});


}
});

然后,要检索它,在任何需要的地方使用它,

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
// Name, email address etc
String name = user.getDisplayName();
String email = user.getEmail();
}

或者您可以创建自己的自定义节点。!

 String currentuser = FirebaseAuth.getInstance().getUid();

//save user node after successful signup.
mFirebaseInstance.getReference("user").child(scurrentuser ).setValue(parameters);



databaseReference = FirebaseDatabase.getInstance().getReference().child("user").child(currentuser );
databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {


for(DataSnapshot userSnapShot: dataSnapshot.getChildren()){
User user = userSnapShot.getValue(User.class);
}
}

关于android - 如何在 Android 中使用身份验证 Uid 从 FirebaseUser 获取用户名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49767695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com