【问题标题】:How to get linked account with current user in firebase如何在firebase中获得与当前用户关联的帐户
【发布时间】:2018-09-17 07:18:40
【问题描述】:

我正在尝试将我的 firebase 帐户链接到我的 google 帐户和 facebook 帐户,直到这里一切正常。这是我如何链接帐户的代码。

mAuth.getCurrentUser().linkWithCredential(credential)
    .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if (task.isSuccessful()) {
                Log.d(TAG, "linkWithCredential:success");
                FirebaseUser user = task.getResult().getUser();
                updateUI(user);
            } else {
                Log.w(TAG, "linkWithCredential:failure", task.getException());
                Toast.makeText(AnonymousAuthActivity.this, "Authentication failed.",
                        Toast.LENGTH_SHORT).show();

            }


        }
    });

现在我想得到,是我当前的帐户是链接到 facebook 还是 google。是否可以获得这些信息,或者我应该将这些信息保存到数据库中吗?

【问题讨论】:

  • firebase.google.com/docs/auth/web/manage-users你可以参考这个参考,它展示了如何获取用户以及如何正确管理他们
  • @AbhishekSharma 非常感谢您 rply ,我想知道当前用户帐户是否连接到 fb、google 和其他社交媒体帐户。

标签: android firebase firebase-authentication


【解决方案1】:

现在我想知道,我当前的帐户是链接到 facebook 还是 google 的?

您可以像这样检查提供商 ID 以查看用户是否使用 Google 或 Facebook 登录:

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

您也可以使用以下代码:

List<? extends UserInfo> infos = user.getProviderData();
for (UserInfo ui : infos) {
    if (ui.getProviderId().equals(GoogleAuthProvider.PROVIDER_ID)) {
        Log.d(TAG, ui.getProviderId());
    }
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-11-09
  • 1970-01-01
  • 2018-05-10
  • 2017-08-25
  • 2013-10-19
  • 2012-11-27
  • 2020-06-17
相关资源
最近更新 更多