Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.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 为FirebaseUI firestore RecyclerViews创建firestore或查询_Java_Android_Firebase_Google Cloud Firestore - Fatal编程技术网

Java 为FirebaseUI firestore RecyclerViews创建firestore或查询

Java 为FirebaseUI firestore RecyclerViews创建firestore或查询,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,我目前正在尝试检索特定集合中满足多字段或查询的所有文档,并用结果填充FirebaseUI Firestore RecyclerView。为此,我正在考虑两种方法: 1。任务合并 下面的示例视频使用如下所示的格式 参考4:27: task1=notebookRef.whereLessThan(“优先级”,2) .orderBy(“优先级”) .get(); 任务task2=notebookRef.where大于(“优先级”,2) .orderBy(“优先级”) .get(); Task allTa

我目前正在尝试检索特定集合中满足多字段或查询的所有文档,并用结果填充FirebaseUI Firestore RecyclerView。为此,我正在考虑两种方法:

1。任务合并

下面的示例视频使用如下所示的格式

参考4:27:

task1=notebookRef.whereLessThan(“优先级”,2)
.orderBy(“优先级”)
.get();
任务task2=notebookRef.where大于(“优先级”,2)
.orderBy(“优先级”)
.get();
Task allTasks=Tasks.whenAllSuccess(task1,task2);
allTasks.addOnSuccessListener(新OnSuccessListener(){
@凌驾
成功时公共无效(列出查询快照){
字符串数据=”;
用于(QuerySnapshot queryDocumentSnapshots:querySnapshots){
用于(QueryDocumentSnapshot文档快照:QueryDocumentSnapshot){
Note=documentSnapshot.toObject(Note.class);
note.setDocumentId(documentSnapshot.getId());
字符串documentId=note.getDocumentId();
String title=note.getTitle();
字符串描述=note.getDescription();
int priority=note.getPriority();
数据+=“ID:+documentId
+“\n标题:”+title+“\n说明:”+description
+“\n优先级:“+优先级+”\n\n”;
}
}
textViewData.setText(数据);
}
});
我的用例如下所示:


        Task task1 = Cref.whereEqualTo("name", Keyword).orderBy("count").get();
        Task task2 = Cref.whereEqualTo("venue", Keyword).orderBy("count").get();
        Task<List<QuerySnapshot>> alltasks = Tasks.whenAllSuccess(task1, task2, task3);

        //  Query query = Cref.whereEqualTo("country", country);
        FirestoreRecyclerOptions<POJO_explore_page_item> options = new
                FirestoreRecyclerOptions.Builder<POJO_explore_page_item>()
                .setQuery(query, POJO_explore_page_item.class).
                        build();

        adapter = new ExplorePageAdapter(options);
        RecyclerView recyclerView = getView().findViewById(R.id.explore_recycler);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
        recyclerView.setAdapter(adapter);



任务task1=Cref.whereEqualTo(“name”,关键字).orderBy(“count”).get();
任务task2=Cref.whereEqualTo(“地点”,关键字).orderBy(“计数”).get();
Task alltasks=Tasks.whenAllSuccess(task1、task2、task3);
//查询=Cref.whereEqualTo(“国家”,国家);
FirestoreRecyclerOptions选项=新建
FirestoreRecyclerOptions.Builder()
.setQuery(查询,POJO\u explore\u page\u item.class)。
build();
适配器=新的ExplorePageAdapter(选项);
RecycleView RecycleView=getView().findViewById(R.id.explore\u recycler);
recyclerView.setHasFixedSize(true);
setLayoutManager(新的LinearLayoutManager(getActivity());
recyclerView.setAdapter(适配器);
我被困在
setQuery()
点。所以,我的问题是如何使用FirebaseUI Firestore RecyclerViews实现合并任务

2。Firestore IN查询

这个选项将是完美的,但我找不到任何详细说明如何为多个字段构建内部查询的资源。以下是查询中的一个字段:

database.collection(“collectionName”)。其中(“fieldName”、“in”、“fieldValue1”、“fieldValue2”)

事实上,这些文档似乎暗示它们只适用于一个领域:

关于您对“合并任务”的疑问,请查看此帖子是否对您有所帮助。

        Task task1 = Cref.whereEqualTo("name", Keyword).orderBy("count").get();
        Task task2 = Cref.whereEqualTo("venue", Keyword).orderBy("count").get();
        Task<List<QuerySnapshot>> alltasks = Tasks.whenAllSuccess(task1, task2, task3);

        //  Query query = Cref.whereEqualTo("country", country);
        FirestoreRecyclerOptions<POJO_explore_page_item> options = new
                FirestoreRecyclerOptions.Builder<POJO_explore_page_item>()
                .setQuery(query, POJO_explore_page_item.class).
                        build();

        adapter = new ExplorePageAdapter(options);
        RecyclerView recyclerView = getView().findViewById(R.id.explore_recycler);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
        recyclerView.setAdapter(adapter);