firebase signInWithEmailLink删除Firebase帐户中的电话号码

奥马尔·阿尔卡坦(Omar Alkattan)

我遇到了Firebase无密码身份验证的问题。我的应用程序使用户可以使用电话号码或电子邮件链接登录。

虽然尝试signInWithEmailLink成功登录的用户在firebase中的帐户丢失了其电话号码

这是通过动态链接将用户从其邮件重定向到应用程序时执行的代码片段:

FirebaseDynamicLinks.getInstance()
                .getDynamicLink(activity.getIntent())
                .addOnSuccessListener(activity, pendingDynamicLinkData -> {
                    
                    Uri deepLink = null;
                    if (pendingDynamicLinkData != null) {
                        
                        deepLink = pendingDynamicLinkData.getLink();
                        String emailLink = deepLink.toString();
                        String authEmail = activity.getPreferences(Context.MODE_PRIVATE).getString("link_auth_email",null);
                        if(authEmail != null){
                            Helper.showProgressDialog(activity);
                            firebaseAuth.signInWithEmailLink(authEmail,emailLink).addOnCompleteListener(activity,task ->{
                                if(task.isSuccessful()){
                                    firebaseUser = task.getResult().getUser();
                                    name = firebaseUser.getDisplayName();
                                    phone = firebaseUser.getPhoneNumber();
                                    email = firebaseUser.getEmail();
                                    image = firebaseUser.getPhotoUrl();
                                    firebaseUser.getIdToken(true).addOnCompleteListener(activity, task1 -> {
                                        Helper.hideProgressDialog();
                                        if(task1.isSuccessful()){
                                            token = task1.getResult().getToken();
                                        }else if(task1.getException() !=null){
                                            Toast.makeText(activity, task1.getException().getMessage(), Toast.LENGTH_SHORT).show();
                                        }
                                    });
                                }else{
                                    Helper.hideProgressDialog();
                                    Toast.makeText(activity, "Authentication failed. "+(task.getException().getMessage()==null?"":task.getException().getMessage()), Toast.LENGTH_SHORT).show();
                                }
                            });
                        }
                    }
                    else{
                        
                        firebaseUser = firebaseAuth.getCurrentUser();
                        if(firebaseUser != null){
                            name = firebaseUser.getDisplayName();
                            phone = firebaseUser.getPhoneNumber();
                            email = firebaseUser.getEmail();
                            image = firebaseUser.getPhotoUrl();
                            firebaseUser.getIdToken(true).addOnCompleteListener(activity, task -> {
                                if(task.isSuccessful()){
                                    token = task.getResult().getToken();
                                }else if(task.getException() !=null){
                                    Toast.makeText(activity, task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                                }
                            });
                        }
                    }
                })
                .addOnFailureListener(activity, e -> Toast.makeText(activity, "Link failure: "+e.getMessage(), Toast.LENGTH_SHORT).show());

Firebase依赖项:

    implementation 'com.google.firebase:firebase-auth:19.3.2'
    implementation 'com.google.firebase:firebase-dynamic-links:19.0.0'
    implementation 'com.google.firebase:firebase-analytics:17.4.4'
奥马尔·阿尔卡坦(Omar Alkattan)

这是因为我通过updateEmail电话身份验证后通过方法而不是使用方式向注册用户添加了电子邮件linkwithcredential

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Firebase Auth与电话号码

来自分类Dev

Firebase从我的电话号码ID中剥离了“ +”号

来自分类Dev

从 firebase 检索我的电话号码

来自分类Dev

firebase使用电话号码获取用户UID

来自分类Dev

如何使用flutter从Firebase检索电话号码

来自分类Dev

Firebase电话号码验证完全在后端

来自分类Dev

Firebase Auth-无法添加电话号码进行测试

来自分类Dev

Firebase-是否可以阻止电话号码注册

来自分类Dev

Firebase 管理员:从 Uid 检索电话号码

来自分类Dev

Firebase 电话号码身份验证代码变空

来自分类Dev

在android中将联系号码与firebase数据库电话号码进行比较时出错

来自分类Dev

将电话号码存储在用户信息/用户配置文件中,无需在 Firebase 中进行身份验证

来自分类Dev

使用电话号码在Firebase上进行身份验证

来自分类Dev

Firebase Cloud功能未更新用户的电话号码

来自分类Dev

Android Firebase查询以按名称或电子邮件或电话号码搜索用户

来自分类Dev

Swift Firebase - 如何阻止电话号码发布到某个参考

来自分类Dev

通过电话号码登录服务进行 Firebase 身份验证

来自分类Dev

如何在firebase的颤动中使用电话号码进行身份验证?

来自分类Dev

从Firebase 3中删除现有帐户

来自分类Dev

如何在 angular2 应用程序中使用 Firebase 电话号码身份验证?

来自分类Dev

Firebase 电话号码身份验证:无法使用提供的参数调用以下任何函数

来自分类Dev

SQL从电话号码中删除字符

来自分类Dev

从文字中删除电话号码

来自分类Dev

查看号码是否在Firebase中

来自分类Dev

Firebase电话号码OTP身份验证可以用于在Flutter的Firestore数据库中创建用户(注册/注册)吗?如果是,怎么办?(安卓)

来自分类Dev

删除帐户之前,请在Firebase Auth中验证用户密码

来自分类Dev

从Firebase中删除帐户是否会自动注销用户?

来自分类Dev

当我用来通过 firebase 身份验证获取我登录用户的电话号码时,它会出现此错误。无法解析方法 getPhoneNumber ()

来自分类Dev

在Firebase中删除“行”

Related 相关文章

  1. 1

    Firebase Auth与电话号码

  2. 2

    Firebase从我的电话号码ID中剥离了“ +”号

  3. 3

    从 firebase 检索我的电话号码

  4. 4

    firebase使用电话号码获取用户UID

  5. 5

    如何使用flutter从Firebase检索电话号码

  6. 6

    Firebase电话号码验证完全在后端

  7. 7

    Firebase Auth-无法添加电话号码进行测试

  8. 8

    Firebase-是否可以阻止电话号码注册

  9. 9

    Firebase 管理员:从 Uid 检索电话号码

  10. 10

    Firebase 电话号码身份验证代码变空

  11. 11

    在android中将联系号码与firebase数据库电话号码进行比较时出错

  12. 12

    将电话号码存储在用户信息/用户配置文件中,无需在 Firebase 中进行身份验证

  13. 13

    使用电话号码在Firebase上进行身份验证

  14. 14

    Firebase Cloud功能未更新用户的电话号码

  15. 15

    Android Firebase查询以按名称或电子邮件或电话号码搜索用户

  16. 16

    Swift Firebase - 如何阻止电话号码发布到某个参考

  17. 17

    通过电话号码登录服务进行 Firebase 身份验证

  18. 18

    如何在firebase的颤动中使用电话号码进行身份验证?

  19. 19

    从Firebase 3中删除现有帐户

  20. 20

    如何在 angular2 应用程序中使用 Firebase 电话号码身份验证?

  21. 21

    Firebase 电话号码身份验证:无法使用提供的参数调用以下任何函数

  22. 22

    SQL从电话号码中删除字符

  23. 23

    从文字中删除电话号码

  24. 24

    查看号码是否在Firebase中

  25. 25

    Firebase电话号码OTP身份验证可以用于在Flutter的Firestore数据库中创建用户(注册/注册)吗?如果是,怎么办?(安卓)

  26. 26

    删除帐户之前,请在Firebase Auth中验证用户密码

  27. 27

    从Firebase中删除帐户是否会自动注销用户?

  28. 28

    当我用来通过 firebase 身份验证获取我登录用户的电话号码时,它会出现此错误。无法解析方法 getPhoneNumber ()

  29. 29

    在Firebase中删除“行”

热门标签

归档