我正在尝试创建一个应用程序,在用户输入他的电子邮件/密码后,他们将保存在firebase中,然后用户输入他的电话号码,在该电话号码上发送otp并且用户在验证后登录.我的问题是完成这些步骤firebase正在创建两个单独的帐户,其中一个与电话其他电子邮件.请告诉我如何创建一个包含电子邮件/密码和电话的单一帐户.
解决方法:
由于您使用的是多个Firebase身份验证提供程序,因此您需要将其链接起来,因此手机和电子邮件都将在单个帐户上创建.
首先,您可以获得凭据:
AuthCredential credential = EmailAuthProvIDer.getCredential(email, password);
然后使用linkwithCredentials(),您将能够链接它们:
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(); updateUI(null); } // ... } });
更多信息:
https://firebase.google.com/docs/auth/android/account-linking
总结以上是内存溢出为你收集整理的android – 如何通过电子邮件/密码身份验证链接Firebase电话身份验证?全部内容,希望文章能够帮你解决android – 如何通过电子邮件/密码身份验证链接Firebase电话身份验证?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)