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

Android 本地数据多次修改时的最佳同步策略,android,mobile,local-storage,offline,Android,Mobile,Local Storage,Offline,我读了很多关于离线缓存策略的书,但不幸的是,我发现没有什么可以满足我的要求 假设我的本地数据库中有一个订单列表,如果其中一个订单被修改,则需要与服务器同步。订单可以有多种状态,如:新建、启动、暂停和完成。状态更改必须按顺序与服务器同步,因为顺序也很重要 创建带有“isModified”列的表对我来说并不好,因为我需要依次同步每个状态更改,而不仅仅是最后一个 当设备脱机时,存储所有状态更改的最佳策略是什么?我正在考虑复制订单表或为同步数据创建一个新的订单表,因为可能还有其他对象,而不仅仅是订单 任

我读了很多关于离线缓存策略的书,但不幸的是,我发现没有什么可以满足我的要求

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

创建带有“isModified”列的表对我来说并不好,因为我需要依次同步每个状态更改,而不仅仅是最后一个

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


任何建议都将不胜感激。

使用Firebase数据库进行脱机数据库。当internet连接处于活动状态时,它会自动同步

应用程序
类中添加以下行:

FirebaseDatabase.getInstance().setPersistenceEnabled(true);

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

应用程序
类中添加以下行:

FirebaseDatabase.getInstance().setPersistenceEnabled(true);

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

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

谢谢,但不幸的是,我无法在我的应用程序中使用google play服务,而且我已经有了一个我想要使用的房间数据库。嗨@Blehi,你终于找到一些策略了吗?我需要像你要求的那样的东西!我使用了另一个本地表,如接受答案中@F43nd1r所建议的。表中的每一行都包含一个要同步的事件。对我来说,事件的顺序也很重要,我按ID顺序一行一行地同步每一行。请注意,我将每个事件存储为JSON字符串(为同步做好准备),但您可能不需要。谢谢,但不幸的是,我无法在我的应用程序中使用google play服务,我已经有一个我想要使用的房间数据库。hi@Blehi,你最终找到了一些策略吗?我需要像你要求的那样的东西!我使用了另一个本地表,如接受答案中@F43nd1r所建议的。表中的每一行都包含一个要同步的事件。对我来说,事件的顺序也很重要,我按ID顺序逐个同步每一行。请注意,我将每个事件存储为JSON字符串(为同步做好准备),但您可能不需要。