从Firebase控制台中的身份验证面板获取用户信息

时间:2017-07-13 08:32:47

标签: firebase firebase-realtime-database firebase-authentication

所以我注意到在Firebase控制台中,有一个名为“身份验证”的面板,其中包含一个用户列表。每个用户都有四条信息:标识符,提供者,创建者,登录者和用户UID。

我想知道在用户未登录的情况下,您是否可以通过编程方式访问此信息。

感谢。

2 个答案:

答案 0 :(得分:0)

是的,您可以使用多种方法访问这些值。为了获得提供者,我建议您使用此代码:

FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
if (firebaseUser != null) {
    for (UserInfo userInfo : firebaseUser.getProviderData()) {
        if (userInfo.getProviderId().equals("facebook.com")) {
            Log.d("TAG", "User is signed in with Facebook");
        }

        if (userInfo.getProviderId().equals("google.com")) {
            Log.d("TAG", "User is signed in with Google");
        }
    }
}

还有其他非常有用的方法:getUid()getDisplayName()getEmail()getPhoneNumber()等。请看一下official documentation

作为此问题的结论,您无法调用其他方法来获取用户的电子邮件地址。您可以做些什么,您可以在users中创建Firebase database部分,存储您需要的所有数据,而不仅仅是查询它。

希望它有所帮助。

答案 1 :(得分:0)

我在文档中发现了以下内容: Documentation about admin.auth().listUsers(...)

https://firebase.google.com/docs/auth/admin/manage-users#list_all_users

admin.auth().listUsers(maxResults, pageToken);