java - Firestore - 如何从文档中知道 id?

标签 java android firebase google-cloud-firestore

如何从 firestore - android studio 中的文档中知道 ID?

在这段代码中,你可以看到,我如何创建一个新帐户,这里我想用用户id创建新文档,但他没有用这个id创建,他放了其他一个。

if (!confirmarCampos(nome,email,eNdata,id,password)){

        fAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {

            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {

                if (task.isSuccessful()) {
                    pessoa.put("nome", nome);
                    pessoa.put("email", email);
                    pessoa.put("ano", eNdata);
                    pessoa.put("idBicicleta", id);
                    pessoa.put("distancia", 0);
                    pessoa.put("pontos", 0);

                    db.collection("pessoa")
                            .document(user_id) //here i put the reference from user id
                            .set(pessoa)
                            .addOnCompleteListener(new OnCompleteListener<Void>() {
                                @Override
                                public void onComplete(@NonNull Task<Void> task) {

                                    if(task.isSuccessful()){
                                        Toast.makeText(Registar.this,"Perfil Criado com Sucesso", Toast.LENGTH_SHORT).show();


                                    }else{
                                        String erro = task.getException().getMessage();
                                        Toast.makeText(Registar.this,"ERRO :" + erro, Toast.LENGTH_SHORT).show();
                                    }
                                }
                            });
                    Intent iConfirmar = new Intent(Registar.this, Login.class);
                    startActivity(iConfirmar);
                    finish();
                }else{
                   Toast.makeText(Registar.this, "O email já existe", Toast.LENGTH_LONG).show();
                }
            }
        });
    }

在这里您可以看到新用户的 ID。

enter image description here

在这里您可以看到新文档中的 ID,它与用户 ID 不同。 因此,我无法使用文档内的值,因为我想将这些值设置到 profile.xml 中。

文档 ID: enter image description here 感谢您的帮助。

最佳答案

这里,你是如何获得user_id的?

尝试以这种方式获取用户 ID,

if (task.isSuccessful()) {
    // Sign up in success, update UI with the signed-in user's information
    FirebaseUser user = mAuth.getCurrentUser();
    if (user != null) {
        user_id = user.getUid();               
    }           
}

关于java - Firestore - 如何从文档中知道 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56943719/

相关文章:

android - 如何创建像 admob 这样的页脚横幅

Android 添加 AdView 到 HTML5WebView

android - HTTP 发布请求 : Error 400, Firebase 主题消息

android - 使用 Firebase 数据库恢复 Activity 时如何正确恢复数据?

java - 如何让JToolBar覆盖窗口的整个高度?

android - 如何为不同于 armeabi 的架构构建和使用 PJSIP?

java - 如何使用 MD5 重新哈希存储在数据库中的密码?

javascript - Firebase child_added

服务器和客户端中的 Java NIO?

java - JVM 如何确保跨所有处理器架构的平台独立性?