多次修改本地数据时的最佳同步策略

时间:2018-05-08 10:48:49

标签: android mobile local-storage offline

我已经阅读了很多有关离线缓存策略的内容,但遗憾的是我发现没有任何内容可以满足我的要求。

假设我的本地数据库中有一个Order列表,如果其中一个被修改,则需要与服务器同步。订单可以具有多种状态,例如:新建,已启动,已暂停和已完成。状态更改必须与服务器按顺序同步,因为顺序也很重要。

使用“isModified”列创建表对我不利,因为我需要按顺序逐个同步每个状态更改,而不仅仅是最后一个。

设备离线时存储所有状态更改的最佳策略是什么?我正在考虑复制Order表或为同步数据创建一个新表,因为还可能有其他对象而不仅仅是Orders。

非常感谢任何建议。

2 个答案:

答案 0 :(得分:1)

将Firebase数据库用于脱机数据库。当互联网连接处于活动状态时,它会自动同步。

Application课程中添加以下一行:

FirebaseDatabase.getInstance().setPersistenceEnabled(true);

答案 1 :(得分:1)

如果修改顺序相关,则应将每个修改存储在某种有序数据结构中,例如:另一个本地表。