【问题标题】:Android FirebaseUI get extra info about user from from providerAndroid FirebaseUI 从提供商处获取有关用户的额外信息
【发布时间】:2025-11-27 16:05:01
【问题描述】:

我正在使用 FirebaseUI Android 让用户使用以下代码登录:

 startActivityForResult(
                AuthUI.getInstance().createSignInIntentBuilder()
                        .setLogo(R.drawable.firebase_auth_120dp)
                        .setProviders(getSelectedProviders())
                        .setIsSmartLockEnabled(false)
                        .setTheme(R.style.AppTheme)
                        .build(),
                RC_SIGN_IN);

private String[] getSelectedProviders() {
        ArrayList<String> selectedProviders = new ArrayList<>();
        selectedProviders.add(AuthUI.EMAIL_PROVIDER);
        selectedProviders.add(AuthUI.GOOGLE_PROVIDER);
        selectedProviders.add(AuthUI.FACEBOOK_PROVIDER);
        return selectedProviders.toArray(new String[selectedProviders.size()]);
    }

并使用以下代码从onActivityResult 获取数据:

if (requestCode == RC_SIGN_IN) {
            handleSignInResponse(resultCode, data);
            return;
        }

一切正常。我正在获取用户的显示名称、电子邮件、照片 url 和 uid,其中包含以下内容:

FirebaseUser currentUser = FirebaseAuth.getInstance().getCurrentUser();
currentUser.*(); 

现在我得到的只是有限的用户数据。我还想要用户的出生日期、简历和兴趣等。我怎样才能得到呢?

【问题讨论】:

    标签: android facebook-graph-api firebase firebase-authentication firebaseui


    【解决方案1】:

    这里似乎已经回答了这个问题:Firebase Auth get additional user info (age, gender)

    很遗憾,Firebase 没有任何内置功能可以在成功登录后获取用户的性别/出生日期。您必须自己从每个提供者那里检索这些数据。

    【讨论】: