【问题标题】:Firebase setDisplayName has no effectFirebase setDisplayName 无效
【发布时间】:2017-03-03 12:53:31
【问题描述】:

我正在使用 Firebase 的自定义身份验证。

我正在尝试设置用户的用户名:

UserProfileChangeRequest userProfileChangeRequest = new UserProfileChangeRequest.Builder()
                .setDisplayName("Hello")
                .build();
        assert currentUser != null;

        currentUser.updateProfile(userProfileChangeRequest).addOnCompleteListener(new OnCompleteListener<Void>() {
            @SuppressWarnings("ConstantConditions")
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                if (task.isSuccessful()){
                    Toast.makeText(UsernameAndProfilePictureChooserActivity.this, "Success. Username: " + getUsername(), Toast.LENGTH_SHORT).show();
                }

                else {
                    throw new Error(task.getException().getMessage(),task.getException().getCause());
                }
            }
        });

但是没有效果。

Toast 消息(Toast.makeText(UsernameAndProfilePictureChooserActivity.this, "Success. Username: " + getUsername(), Toast.LENGTH_SHORT).show(); 被调用,但 getUsername(),即FirebaseAuth.getInstance().getCurrentUser().getDisplayName() 返回 null。

关闭应用程序然后重新打开它不起作用。

为什么会这样?

【问题讨论】:

  • Firebase 存在错误,请关闭应用并重新打开。它工作正常
  • @MuhammadFarrukhFaizy 不。它对我不起作用。
  • 刚刚试过你的代码,它对我有用。我正在使用com.google.firebase:firebase-auth:10.2.0。我想说检查你的 currentUser 对象和你的 getUsername() 方法。
  • @Distwo 可能是因为我需要更新我的 firebase 版本...会做
  • @AbAppletic 有效果吗?

标签: android firebase firebase-authentication


【解决方案1】:

尝试更新您的 Firebase 身份验证库的版本。

我正在使用com.google.firebase:firebase-auth:10.2.0,它对我有用。

【讨论】:

    猜你喜欢
    • 2016-11-02
    • 2017-02-17
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-13
    • 2016-09-15
    相关资源
    最近更新 更多