我有一个模型类,如下所示:
public class ListModel {
private String listName;
@ServerTimestamp
private Date date;
public ListModel() {}
public ListModel(String listName) {this.listName = listName;}
//setters and getters
}
这就是我向数据库添加列表
的方法:
ListModel listModel = new ListModel(listName);
listsRef.document(listId).set(listModel);
当我查看数据库时,我的日期如下所示:
为了显示列表的名称
和日期
,我使用了FirestoreRecyclerAdapter
和RecyclerView
>。问题是,当我添加列表时,名称会立即显示,但日期首先显示为 null
,只有在一两秒后才正确显示。
我知道日期是服务器端生成的,但是如何才能从第一次就正确显示日期?
最佳答案
目前无法立即显示时间戳。服务器端时间戳仅在服务器上生成,并且在服务器返回响应之前为null
。
正在进行的工作可以使客户端立即估计时间戳。一旦发布,您将收到两个事件(类似于 how the Firebase Realtime Database works ):第一个事件包含时间戳的本地估计,第二个事件包含来自服务器的实际确认时间戳。
关于java - 如何正确显示 Cloud Firestore 列表的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48194237/