【发布时间】:2019-02-15 10:14:04
【问题描述】:
我正在开发一个 Android 应用程序,我需要对我的 Firestore 数据库进行复杂查询并创建一个FirestoreRecyclerAdapter。要创建适配器,我需要一个 FirestoreRecyclerOptions 对象来输入整个查询。阅读文档后,我无法在查询中对不同参数使用 whereGreaterThan、whereLessThan、oderBy 等方法。例如,如何从 db 中获取年龄大于/小于 AND 体重大于/小于的用户?
例如,我的 firestore 数据库中的文档结构是:
Users --->UserID--->userName(String)
--->userAge(number)
--->userHeight(number)
--->userWeight(number)
FirebaseFirestore db;
db = FirebaseFirestore.getInstance();
RecyclerView recyclerView;
recyclerView = (RecyclerView)findViewById(R.id.recyclerViewID);
.
.
.
Query query = db.collection("Users").//the complex query that i need
FirestoreRecyclerOptions<User> options = new FirestoreRecyclerOptions.Builder<User>()
.setQuery(query, User.class)
.build();
adapter = new UsersAdapter(options, this);//get in input options and the context
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapter);
编辑:我上一条评论中回答 1 的可能解决方案
【问题讨论】:
标签: java android firebase google-cloud-firestore firebaseui