您当前的位置: 首页 >  android

命运之手

暂无认证

  • 2浏览

    0关注

    747博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Android】【功能设计】离线数据同步方案

命运之手 发布时间:2018-07-17 18:18:27 ,浏览量:2

这里考虑的是本地数据不会被其它用户修改的情况,类似于微信,离线任务都是自己要发出的消息,不会和网络数据产生冲突 对于多个离线用户,同时修改同一份数据的情况,不适合使用此方案,大多时候也不允许离线使用

查询数据 有网的情况下,从网络下载数据 以网络作为最新版本的情形:清空本地数据,将网络数据存储到数据库 以本地作为最新版本的情形:本地不存在Id则插入到数据库,本地存在则跳过 对于实时性不高的数据,也可以放在后台定期查询

新增,修改,删除 只适合以本地作为最新版本,否则会造成数据同步混乱 如果要以网络作为最新版本,要强制在线使用,不能使用离线模式 不管有无网络,将数据变动直接提交到数据库,并按时间和任务类型保存到离线任务 开启后台服务,有网络时上传离线任务

数据库中应该包括Id和OfflineId两个字段,因为离线数据是没有Id的,在线数据是没有OfflineId的 将网络数据插入数据库时,分配一个OfflineId,这样OfflineId永远非空,就可以作为主键

总结来说,这个方案只需操作数据库,将离线操作保存到后台任务提交,必要时才将查询数据插入数据库 各个步骤之间都是独立的,不会出现混乱关系

关注
打赏
1654938663
查看更多评论
立即登录/注册

微信扫码登录

0.0396s