如何在集合中更改时知道在firestore中?

问题描述 投票:0回答:1

我有一个包含餐馆菜单项目的集合,我想知道何时添加新项目或有更改(价格,名称,描述),因为我想通知这个应用程序并在内部下载此更改数据库。

我试图创建一个firebase function来修改一个名为version的字段,这种方式应用程序vs firebase版本的集合中的campare版本,但我真的不知道如何使用firebase函数。

有人可以推荐吗?

java android firebase google-cloud-firestore
1个回答
2
投票

Cloud Firestore是一个灵活,可扩展的数据库,通过realtime listeners保持您的数据在客户端应用程序之间同步,并为移动和Web应用程序提供offline support

因此,为了知道数据库中是否有某些内容已更改,您需要在特定位置附加一个列表器。假设您有一个名为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
    }
});

与Firebase实时数据库不同,Cloud Firestore默认启用数据持久性。因此,无需将数据保存在内部数据库中。

© www.soinside.com 2019 - 2024. All rights reserved.