Java 如何在firestore中知道集合何时发生更改?
我有一个包含餐厅菜单项目的集合,我想知道何时添加了新项目或发生了更改(价格、名称、说明),因为我想将此通知应用程序,并将此更改下载到内部数据库中 我试图创建一个名为version的字段,通过这种方式修改集合的app vs firebase版本中的campare版本,但我真的不知道如何使用firebase函数Java 如何在firestore中知道集合何时发生更改?,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,我有一个包含餐厅菜单项目的集合,我想知道何时添加了新项目或发生了更改(价格、名称、说明),因为我想将此通知应用程序,并将此更改下载到内部数据库中 我试图创建一个名为version的字段,通过这种方式修改集合的app vs firebase版本中的campare版本,但我真的不知道如何使用firebase函数 有人能推荐吗?云Firestore是一个灵活、可扩展的数据库,它通过实时侦听器使您的数据在客户端应用程序之间保持同步,并为移动和web应用程序提供支持 因此,为了知道数据库中是否有更改,您需
有人能推荐吗?
云Firestore
是一个灵活、可扩展的数据库,它通过实时侦听器使您的数据在客户端应用程序之间保持同步,并为移动和web应用程序提供支持
因此,为了知道数据库中是否有更改,您需要在特定位置附加listner。假设您有一个名为cities
的集合和一个名为SF
的文档,请使用以下代码。这是一个直截了当的例子
DocumentReference docRef = db.collection("cities").document("SF");
docRef.addSnapshotListener(new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot snapshot, @Nullable FirebaseFirestoreException e) {
// see which fields changed
}
});
DocumentReference docRef=db.collection(“cities”).document(“SF”);
docRef.addSnapshotListener(新的EventListener(){
@凌驾
public void onEvent(@Nullable DocumentSnapshot snapshot,@Nullable FirebaseFirestoreException e){
//查看哪些字段已更改
}
});
与Firebase实时数据库不同,Cloud Firestore在默认情况下启用了数据持久性。因此,没有必要将您的数据也保存在内部数据库中。您似乎在寻找非常感谢Alex,您的回答让我对如何处理应用程序的脱机模式有了新的想法。因为我只想在有新的改变时才改变。