使用 ISAR 数据库提供离线 Flutter 支持

本文介绍了如何在 Flutter 应用中使用 Isar 数据库提供离线支持。Isar 是一个专为 Flutter 设计的高性能数据库,具有丰富的特性,如全文搜索和 ACID 语义。通过示例,详细讲解了如何实施 Isar,包括添加、读取、更新和删除数据,以及与 Firebase 同步的操作。文章还讨论了数据流逻辑和 Schema 的设计,帮助开发者理解如何在实际应用中使用 Isar 提供离线功能。
摘要由CSDN通过智能技术生成

使用 ISAR 数据库提供离线 Flutter 支持

alt

译文 https://medium.com/@tkarmakar27112000/flutter-offline-support-using-isar-database-b79f5006d3a

前言

这是我的口头禅,我试图遵循我的 应用 application 。对于那些针对二三线城市的面向客户的应用程序,应优先考虑离线支持。

我们可以使用像 SQLite 这样的关系数据库,也可以使用由 Hive、甚至 Isar 提供的非关系数据库。

在这个博客中,我们将深入研究工作原理,了解 Isar 数据库的使用过程和易用性。

正文

什么是 Isar 数据库?

ISAR 数据库是一个超快速的跨平台 Flutter 数据库。

alt

以下是 Isar 的一些特色和亮点,

  • 为 Flutter 而生
  • 高度可 extension
  • 特色丰富
  • 支持全文搜索
  • ACID 语义学
  • 静态类型
  • Something 异步
  • 开放源码

实施

让我们看看如何可以轻松地实现在我们的 Flutter 应用程序 Isar 数据库。

首先,我们必须了解我们的应用程序应该能够执行什么。

故事时间。

对于本教程,我们有一个药物库存应用程序,是由代表使用添加,删除和更新他们的药物库存。

假设该代表将访问偏远地区销售这种药物,我们必须实施完整的离线支持,使他可以执行所有的过程离线和数据得到自动更新,当有互联网连接。

数据流

  • 应用程序启动并检查数据。如果是,它从数据库中获取所有药物并存储在 Isar。如果没有,它将从 Isar 获取数据并填充数据。
  • 保存在 ISAR 数据库中的数据包含一个 isSynces 标志,该标志表示数据与 firebase 同步的天气。
  • 每当一种新的药物被添加,如果有互联网,它会同时更新 Isar 和火力基地,否则它会更新 Isar 与 isSynced 标志为假。
  • 剪辑也一样。
  • 删除每个删除的项目将添加到一个列表中,并从 Isar 删除。一旦有了连接,它就会更新数据库。
  • 为了使数据始终保持同步,每隔 30 秒使用一个定时器检查连接情况,并且整个数据库与在线数据库同步。

我们开始编程吧

我将假设您已经创建了该项目和集成的 Firebase,因此我们有权访问 Firebase 的 firestore。

让我们集成网络检查器,以便让连接状态始终存在。

为此我们将使用,

  • connectivity_plus

https://pub.dev/packages/connectivity_plus

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值