如何在Firebase数据库中添加用户的姓名,个人资料照片,地址?

anu*_*ngh 5 android firebase firebase-realtime-database

我正在尝试创建一个Android应用,我希望将每个用户的个人详细信息(如姓名,个人资料照片和地址)保存到Firebase数据库以备将来使用.

请建议我怎么做?

Nis*_*bey 31

您还没有花时间熟悉这些Firebase文档.这就是为什么你的问题有这么多的低票的原因.我还想简要介绍一下Firebase为您提供的内容:

//这是您获取每个登录用户的用户配置文件数据的方法

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
    // Name, email address, and profile photo Url
    String name = user.getDisplayName();
    String email = user.getEmail();
    Uri photoUrl = user.getPhotoUrl();

    // The user's ID, unique to the Firebase project. Do NOT use this value to
    // authenticate with your backend server, if you have one. Use
    // FirebaseUser.getToken() instead.
    String uid = user.getUid();
}
Run Code Online (Sandbox Code Playgroud)

//这是您更新每个登录用户的用户配置文件数据的方法

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.");
                }
            }
        });
Run Code Online (Sandbox Code Playgroud)

如果你使用firebase而没有实现任何身份验证和安全规则,那么我会说你应该尽快更改它.由于没有身份验证和适当的安全规则,任何人都可以访问您的数据库并以他/她想要的任何方式更改它.

对于已登录的用户,您无需执行任何额外或特殊操作来保存其个人资料详细信息.如果您使用Gmail,Facebook等身份验证提供程序,则firebase会自动保存基本个人资料信息.如果您使用的是某些自定义身份验证方法,请参阅firebase提供的更新用户个人资料代码段.这就是你保存基本用户档案的方法.

如果这有助于你,请告诉我.

  • 这对于姓名、电子邮件和个人资料图片非常有用,但我将如何保存更多详细信息,例如地址、帐户级别、出生日期等? (2认同)