我使用firebase分页来限制firebase数据库下载,但firebase控制台仍然显示大量数据库下载,
DatabaseReference db = FirebaseDatabase.getInstance().getReference().child("Posts").child(country).child(phase);
query = db.orderByChild("random_no").startAt(min).limitToFirst(limit);
FirebaseRecyclerOptions<Photo> options =
new FirebaseRecyclerOptions.Builder<Photo>()
.setQuery(query, Photo.class)
.build();
我希望它在分页之前下载整个数据库。
有人能帮助如何在不下载整个数据库的情况下进行firebase分页吗。
如果你告诉Firebase数据对其结果进行排序/筛选,它总是会这样做。但是,如果你在数据库规则中定义了必要的索引,它只能在服务器上这样做。如果找不到这样的索引,SDK将下载路径上的所有节点,并在应用程序中对它们进行排序/筛选。如果发生这种情况,它还会记录一条警告,并说明要向logcat输出中添加什么索引。
因此,很可能您没有在数据库规则中为/Posts/$country/$phase
在random_no
上定义索引。