我需要从一个用户(不是当前用户)的uid
获取电子邮件地址。我的数据库有一个称为“用户”的孩子,而这个数据库有一个孩子,哪些键是所有用户的uid。我需要按其他用户的uid获取其他用户的电子邮件地址。
String uidReceiver = "B53Bk4dtHjZ6a3ZjoO2cEowEf4w2";
DatabaseReference usersRef;
usersRef = FirebaseDatabase.getInstance().getReference().child("users");
// To get the email address of the current user
FirebaseUser userSender = FirebaseAuth.getInstance().getCurrentUser();
String emailSender = userSender.getEmail();
usersRef.child(uidReceiver).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists())
{
// How can I get the email address of uidReceiver
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
谢谢!
答案 0 :(得分:1)
如果您要使用自己的uid从FirebaseAuth
获取用户的电子邮件,则无法从android客户端获取。只有Firebase管理员可以从FirebaseAuth
获取用户的电子邮件,而android sdk没有管理员权限。您需要将电子邮件添加到Firebase数据库中,以获取所需用户的电子邮件。