假设我在 Android 的 Firebase 中创建了用户,其 UID 是 rka1KNwIA2elmmHOv97AZbj9KDs1
并且我想要 User
对象,它类似于 user我们将从以下代码中得到
FirebaseUser user=FirebaseAuth.getInstance().getCurrentUser();
最佳答案
要解决这个问题,首先,您需要创建一个类:
public class User {
public String imageURL, mail, misno, name, phon;
public User() {}
}
现在,要获取 rka1KNwIA2elmmHOv97AZbj9KDs1
对象作为 User
类的对象,请使用以下代码行:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference uidRef = rootRef.child("User").child(uid);
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
User user = dataSnapshot.getValue(User.class);
Log.d("TAG", user.name);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d("TAG", databaseError.getMessage()); //Don't ignore errors!
}
};
uidRef.addListenerForSingleValueEvent(valueEventListener);
我添加了一条日志语句,以查看在 logcat 中打印出用户名。
关于java - 如何从 Firebase Android 中的用户 ID 获取用户对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61499528/