Jef*_*ett 4 android firebase google-cloud-firestore
我正在使用Firestore Recycler Adapter绑定到firestore中的大型集合的查询.
据我了解GitHub中的文档,Firestore Recycler Adapter使用.addSnapshotListener(),而不是.get()方法.
该系列有5,000个文件,其中我将限制为100个.
Query query = fsDB.collection("Users").document(user_id).collection("posts")
.orderBy("date_created).orderBy("topic").limit(100);
Run Code Online (Sandbox Code Playgroud)
现在,当我连接到Internet并且启用了脱机持久性时,此查询在调用onDataChanged()之前平均需要90秒.我认为这是因为回收者从设备上的内存或缓存中获取数据,然后在从网络获取数据之前对其进行排序(!).
因为,当禁用脱机持久性时,查询只需要2-3秒.
如何在启用脱机持久性的同时更快地使用此查询?或者是否有一种方法可以使侦听器在搜索内存/缓存之前访问网络索引?
就像是...
FirestoreRecyclerOptions<Reed> options = new FirestoreRecyclerOptions.Builder<>()
.setQuery(query, Reed.class)
.setFirst(FirebaseFirestore.getInstance fsDB);
Run Code Online (Sandbox Code Playgroud)
客户端的firestore索引不可用吗?
使用firestore 15.0.0,Android设备
离线查询未像应用程序在线时那样进行优化.快速查询是Firestore后端的一项功能,在离线时显然不可用.
另请参阅:Firestore作为脱机持久性机制的可靠性如何?
| 归档时间: |
|
| 查看次数: |
1525 次 |
| 最近记录: |