android - 如何在 Firebase 中注册用户名?

标签 android firebase firebase-realtime-database firebase-authentication

我正在尝试在 Firebase 中实现用户名注册,因为它只提供类似于 createUserWithEmailAndPassword() 的方法,但您无法创建用户名,我也不知道如何创建做...

下面是我的注册码,但是我也想输入一个用户名,可以使用,当用户发布什么的时候,比如getEmail()方法,也可以有一个 getUsername()

 auth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(RegisterActivity.this, new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {

                progressBar.setVisibility(View.GONE);

                if(!task.isSuccessful()){
                    Toast.makeText(RegisterActivity.this, "Something went wrong :(" , Toast.LENGTH_LONG).show();
                }else{
                    startActivity(new Intent(RegisterActivity.this, UsernameARegistrarActivity.class));
                    finish();
                }
            }
        });
    }

我的模型类:

public class User implements Serializable{
    private String user;
    private String email;
    private String Uid;
    private String username;

    public User() {
    }

    public User(String user) {
        this.user = user;
    }

    public User(String user, String email, String uid, String username) {
        this.user = user;
        this.email = email;
        Uid = uid;
        this.username = username;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getUser() {
        return user;
    }

    public void setUser(String user) {
        this.user = user;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }


    public String getUid() {
        return Uid;
    }

    public void setUid(String uid) {
        Uid = uid;
    }
}

最佳答案

如果您改用带有用户名的电子邮件/密码身份验证,则可以简单地将用户索引到 sep 路径中的电子邮件地址。然后当用户进行身份验证时,在索引中查找他们的电子邮件:

/user_to_email_index/$用户名/ https://www.firebase.com/docs/web/guide/login/custom.html

关于android - 如何在 Firebase 中注册用户名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43445169/

相关文章:

android - 为 bazel、android tensorflow 设置 targetSdkVersion 和 compileSdkVersion

android - cv::cvtColor 没有分配内存问题

android - 从应用程序包生成 APK 时签署信息

javascript - 当对象没有引号时将对象转换为数组javascript

java - 如何从Firebase实时数据库获取两个变量

android - Spring Android REST 模板解析内容类型为 text/html 的 JSON 数据

swift - 我如何进入 firebase 并获取我的图片 url,然后将其解码为 UIImage,然后将图片显示为谷歌地图中的标记图标?

angular - 用于 Firebase 列表的嵌套 Angular2 ngFor 指令

javascript - 在 Algolia 索引中搜索二级数据集

ios - 插入 CollectionView 会引发无效更新错误