【问题标题】:How to cache firestore documents in flutter?如何在flutter中缓存firestore文档?
【发布时间】:2020-12-21 06:42:30
【问题描述】:

我想存储从 Firestore 下载的文档。每个文档都有一个唯一的 id,所以我在想一种方法,我可以将该文档以 json 格式或数据库表存储(这样我就可以访问它的字段),如果该 id 不存在于内存中,而不仅仅是从 firestore 下载它并保存它。如果长时间不使用/调用这些文档,我也希望将其删除。我找到了这个cache manager,但无法理解如何使用它。

【问题讨论】:

    标签: flutter caching google-cloud-firestore


    【解决方案1】:

    您可以使用任何flutter downloadmanager下载内容,并将下载内容的路径保留在sqllite中,如果数据已经保存,则从本地存储而不是url加载数据。

    以下伪代码可能会对您有所帮助:

    if(isDownloaded(id)){
    //show from local;
    } else {
    //  show from remote
    }
    

    您可以手动检查资源是否正在使用,方法是保留它的时间戳并仅在显示时更新时间戳。并且您可以运行一个服务来查找未使用的资源并将其从存储和数据库中删除。

    【讨论】:

    • 是的,这是一种暴力操作方式。但我在想是否有类似flutter_cache_manager_firebase这样的包:^1.0.1(我仍然不明白如何使用它)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-22
    • 2021-12-29
    • 2021-11-28
    • 2020-11-06
    • 2020-04-30
    • 2020-11-08
    相关资源
    最近更新 更多