当前位置:  开发笔记 > Android > 正文

如何通过用户获取userID Email Firebase android?

如何解决《如何通过用户获取userIDEmailFirebaseandroid?》经验,为你挑选了1个好方法。

给定一个电子邮件地址,是否可以获得一个人的用户ID?例如,

如果我有一封可变电子邮件,其中包含该人的电子邮件.我可以通过做类似的事情来获取他们的ID

String userID = mAuth.DatabaseReference.getuID.(email);

对不起,如果这是一个愚蠢的问题.

编辑:注意,我希望获得不是当前用户的人的ID.所以我不能用FirebaseUser user = mAuth.getCurrentUser();

我的数据库结构如下所示,因此ID已经存储在数据库中.我只需要一种方法来获取它(在下面的图表中我没有电子邮件领域,但我会添加一个,因为任何人都想知道-_-).

此外,如果可能的话,我想根据他们的电子邮件或我通过ID获得ID后获取他们的个人资料图片.

在此输入图像描述



1> Frank van Pu..:

如果要通过受信任服务器上的电子邮件查找用户,可以使用Firebase Admin SDK.从有关检索用户数据的文档:

admin.auth().getUserByEmail(email)
  .then(function(userRecord) {
    // See the tables above for the contents of userRecord
    console.log("Successfully fetched user data:", userRecord.toJSON());
  })
  .catch(function(error) {
    console.log("Error fetching user data:", error);
  });

Firebase身份验证的客户端SDK仅提供对当前经过身份验证的用户的配置文件的访问.它们不提供通过电子邮件地址查找用户的方法.要允许客户端查找,执行此操作的常用方法是将UID-by-email-address存储在数据库中:

"emailToUid": {
    "SumOne@domain,com": "uidOfSumOne",
    "puf@firebaseui,com": "uidOfPuf"
}

使用此简单列表,您可以通过编码的电子邮件地址查找UID:

ref.child("emailToUid").child("SumOne@domain,com").addSingleValueEventListener(...

也可以看看:

Firebase身份验证服务 - 无需登录即可从电子邮件中查找uid

在Firebase用户表上添加额外详细信息

如何从firebase数据库中获取经过身份验证的用户?

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有