Android - 如何将多个Auth Providers链接到一个帐户,即谷歌和电子邮件/密码

时间:2017-02-10 01:53:50

标签: android firebase firebase-authentication google-signin oauth-provider

我已检查过文档,但我不明白链接在哪里连接帐户。我有一个谷歌登录工作和一个密码/电子邮件版本单独工作,但他们还没有在同一个帐户上一起工作。例如,我想允许用户使用他的谷歌帐户或他的用户名和密码登录他的帐户 - 两者都使用相同的凭证令牌。我使用firebase作为后端。 我希望有人知道我可以遵循的一个好例子,或者如果有人知道我需要建立连接的代码以及将它放在Android上的标准登录应用程序中的位置,非常感谢!!

2 个答案:

答案 0 :(得分:0)

我认为您正在寻找的官方文档位于" Link Multiple Auth Providers"标题下。

答案 1 :(得分:0)

您需要做的就是:

AuthCredential credential = GoogleAuthProvider.getCredential(googleIdToken, null);
mAuth.getCurrentUser().linkWithCredential(credential)
    .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            task.isSuccessful());

            if (!task.isSuccessful()) {
                Toast.makeText(AnonymousAuthActivity.this, "Authentication failed.",
                        Toast.LENGTH_SHORT).show();
            }
        }
    });