添加新文档时,kotlin firestore 未更新我的 android 应用程序
Posted
技术标签:
【中文标题】添加新文档时,kotlin firestore 未更新我的 android 应用程序【英文标题】:kotlin firestore not updating my android app when new document is added 【发布时间】:2022-01-02 16:10:25 【问题描述】:我有一个带有一些文件的 Firestore。当我运行该应用程序时,快照侦听器会正确获取所有文档,然后当这些文档发生更改时它会更新。 如果我通过控制台(不是通过应用程序)添加新文档,我不会像我预期的那样收到任何通知。我错过了什么 ? 这是快照监听器的代码:
val docRef = db.collection("pile").orderBy("time", Query.Direction.DESCENDING)
val listener = docRef.addSnapshotListener() value, e -> ...
【问题讨论】:
是否已将消息记录在e
对象中?你有打印出来的东西吗?
完全没有反应。它没有到达错误块。
那么value
或e
是否包含任何值?
【参考方案1】:
经过几次尝试后,我了解到即使在 firestore 的第一批文档“浪潮”中,也不是所有文档都被下载,然后我意识到由于我的 Query 中的“orderBy”,我每次得到的列表都必须在其中包含此字段(“时间”)。 如果我想得到更新,新文件也必须有这个字段。 因此,当您尝试测试您的 firestore 时,不要偷懒并写下所有字段,或者至少是那些在您的“orderBY”中的字段。
【讨论】:
以上是关于添加新文档时,kotlin firestore 未更新我的 android 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Firestore 中读取使用 Kotlin 中的 hashMap 添加的文档?
如何从firestore中删除文档时实时更新Recyclerview?
将数据类的对象添加到 Kotlin 的 Firestore 时如何添加 Firebase 时间戳?
Cloud Firestore 文档添加给出错误“参数“数据”的值不是有效的 Firestore 文档。不能使用“未定义”作为 Firestore 值”