我可以更改用户注册时 FirebaseUI 要求的信息吗?

Posted

技术标签:

【中文标题】我可以更改用户注册时 FirebaseUI 要求的信息吗?【英文标题】:Can I change what information FirebaseUI asks for when a user signs up? 【发布时间】:2017-06-05 21:45:19 【问题描述】:

我正在制作一个具有 Firebase 身份验证功能的应用程序,用于登录和注册。当我搜索时,我发现 FireBase UI 看起来不错。当我看到 auth 文档时,create user 方法只接受 Email ID 和 password ,但 Firebase UI 也获取了用户的名字和姓氏。输入的名称有什么作用?它是存储在身份验证或数据库中的某个地方还是只是为了展示?如果我实现自己的注册用户界面,我可以添加更多详细信息,而不仅仅是电子邮件 ID 和密码吗?

【问题讨论】:

是的,您可以添加任意数量的详细信息 它将被保存在数据库中 我不是在谈论实时数据库。我说的是 Firebase 身份验证。 【参考方案1】:

我是 FirebaseUI 的开发人员之一。

为了保存显示名称,FirebaseUI 在登录后会发出UserProfileChangeRequest

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

UserProfileChangeRequest profileUpdates = new UserProfileChangeRequest.Builder()
        .setDisplayName("Jane Q. User")
        .setPhotoUri(Uri.parse("https://example.com/jane-q-user/profile.jpg"))
        .build();

user.updateProfile(profileUpdates)
        .addOnCompleteListener(new OnCompleteListener<Void>() 
            @Override
            public void onComplete(@NonNull Task<Void> task) 
                if (task.isSuccessful()) 
                    Log.d(TAG, "User profile updated.");
                
            
        );

这允许存储一些基本字段,例如显示名称和照片 URL。对于自定义字段,您需要将信息存储在 Firebase 实时数据库中。

https://firebase.google.com/docs/auth/android/manage-users#update_a_users_profile

【讨论】:

非常感谢。这有帮助

以上是关于我可以更改用户注册时 FirebaseUI 要求的信息吗?的主要内容,如果未能解决你的问题,请参考以下文章

FirebaseUI - 在创建用户之前验证 displayName

将 FirebaseUI 与 Twitter 登录一起使用(iOS 应用)

FirebaseUI RecycleView 只显示第一项

FirebaseUI,指定在特定情况下要打开的特定活动(注册后)

Apple 在 iOS (Swift) 上使用 FirebaseUI 登录不起作用

FireBaseUI Auth - 如何知道帐户是来自新注册用户还是现有用户?