如何从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。
在这里您可以看到新文档中的ID,它与用户ID不同。
因此,我无法使用文档内部的值,因为我想将这些值设置为profile.xml。
文档ID:
谢谢您的帮助。
答案 0 :(得分:0)
在这里,您是如何获得user_id的?
尝试以这种方式获取用户ID,
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#ff0000"
android:gravity="center"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="@+id/textView3"
app:layout_constraintEnd_toStartOf="@+id/textView3"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/textView3" />
<TextView
android:id="@+id/textView3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#63f542"
android:gravity="center"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/textView4"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/textView"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#ff00ff"
android:gravity="center"
android:text="TextView"
app:layout_constraintBottom_toBottomOf="@+id/textView3"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/textView3"
app:layout_constraintTop_toTopOf="@+id/textView3" />
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>