firebase - 如何在 Flutter Firestore 聊天应用程序上实现“消息未送达”
问题描述
TL;博士
我正在使用快照收听 Firestore 更改。快照文档来自缓存。如何指示 DocumentSnapshot 是否已交付?是否有任何标志可以表明它?
更多信息
我正在开发一个聊天应用程序,我想在消息旁边实现一个“消息未传递”图标,就像 WhatsApp 一样(在没有网络连接的情况下)。
我正在使用 Firestore 收集我的消息,并且正在使用快照收听更新。由于我使用的是 Firestore 快照,因此我从缓存中获取消息,而缓存本身会在每次更改时更新(这非常酷)。
我的问题是我无法指出每条消息是否已成功传递。
一个很好的用例是一个没有网络连接的用户,它正在发送一条消息,然后关闭应用程序,然后重新打开它(没有任何网络,仅缓存)。我需要向他们表明最后一条消息仍未送达。
解决方案
The flag document.metadata.hasPendingWrites
indicates whether the document was delivered or not.
推荐阅读
- r - 聚合移动方差
- c# - float.Parse 不再在 Unity (C#) 中工作
- regex - 正则表达式匹配基于唯一字符串的重复模式的紧邻左侧出现
- python - 使用 python 2.7 从关键字列表中随机重命名多个图像
- python - 如何将 WSGI 用于我的 Flask 应用程序?我的应用程序使用线程
- jquery - jQuery滚动到元素不起作用2
- asp.net - 如何在不使用完整 URL 的情况下重定向到特定页面
- flowtype - 如何指定 .flowconfig 文件位置?
- php - Laravel auth 有时会检索到错误的用户
- c++ - 从位图中检索 LPBITMAPINFOHEADER (c++)