Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Firestore中查询文档引用?_Java_Android_Firebase_Google Cloud Firestore - Fatal编程技术网

Java 如何在Firestore中查询文档引用?

Java 如何在Firestore中查询文档引用?,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,我是firebase Firestore的新手,当我试图用Firestore编写此代码时,遇到了一个问题 DatabaseReference mDisplayData = FirebaseDatabase.getInstance().getReference().child("Users").child(postKey); com.google.firebase.database.Query firstQuery = mDisplayData.limitToFir

我是firebase Firestore的新手,当我试图用Firestore编写此代码时,遇到了一个问题

DatabaseReference mDisplayData = FirebaseDatabase.getInstance().getReference().child("Users").child(postKey);
                com.google.firebase.database.Query firstQuery = mDisplayData.limitToFirst(20);
                firstQuery.addListenerForSingleValueEvent(new ValueEventListener() {
                    @Override
                    public void onDataChange(DataSnapshot dataSnapshot) {
                        if (dataSnapshot.exists()){
                            String nameData = dataSnapshot.child("name").getValue().toString();
                            String statusData = dataSnapshot.child("status").getValue().toString();
                            String imageData = dataSnapshot.child("thumb_image").getValue().toString();

                            userViewHolder.setDetails(getApplicationContext(),nameData,statusData,imageData);
                        }
                    }

                    @Override
                    public void onCancelled(DatabaseError databaseError) {}
                });
问题出在这一行代码中:

 Query firstQuery = firebaseFirestore.collection("Users").document(postKey).collection(null);
我想做的是创建一个firestore查询,但我只想在postkey引用中停止不可能的事情我该怎么做。 请提供帮助并感谢您。

以下代码行中的firstQuery:

Query firstQuery = firebaseFirestore.collection("Users").document(postKey).collection(null);
属于Firestore查询类型,而不是Firebase实时数据库查询类型。因此,您无法在这样的对象上调用addListenerForSingleValueEvent。实际上,您要做的是使用代码在Firestore查询中从Firebase实时数据库获取数据,这显然是不可能的


要解决这个问题,您需要对firstQuery对象使用get调用,然后附加一个侦听器。但首先,我建议您阅读有关的官方文档。

是的,是的,我知道这里的查询是firebase.firestore查询,而不是数据库。这不是问题所在。问题是如何使用firestore.query仅获取postkey。谢谢您的回答。使用您共享的代码,您将永远无法从Firestore数据库中获取任何信息。分享你的数据库结构,并请指出你想要得到什么。还没有,对不起,我没有看到你的问题,我想我必须改变我的数据库结构来解决这个问题。你认为我的回答对你有帮助吗?