移动终端中群组数据与非群组数据同步的方法和装置的制造方法

文档序号:10542280阅读:276来源:国知局
移动终端中群组数据与非群组数据同步的方法和装置的制造方法
【专利摘要】本发明实施例提供一种移动终端中群组数据与非群组数据同步的方法和装置,方法包括:如果查询到新群组数据,为新群组数据生成Parent-sourceid,在新群组数据上传到服务器后,将新群组数据的Parent-sourceid更新到客户端数据库的主表中;如果查询到新非群组数据,为新非群组数据生成sourceid,在新非群组数据上传到服务器后,将新非群组数据的sourceid更新到客户端数据库的子表中;当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联新群组数据和新非群组数据。本发明实施例能够在群组数据与非群组数据同步时,简化客户端的处理。
【专利说明】
移动终端中群组数据与非群组数据同步的方法和装置
技术领域
[0001]本发明实施例涉及移动终端技术领域,尤其涉及一种移动终端中群组数据与非群组数据同步的方法和装置。
【背景技术】
[0002]近年来,随着移动通信技术的飞速发展和移动终端智能化趋势的加快,人们正走入一个新的移动互联网时代。多种多样具备网络连接能力的移动终端,诸如手机、平板电脑、电纸书等的出现,带给人们随时随地访问互联网的便捷。Android的出现,更是将移动终端推向了以应用和数据为主导的时代。今天的移动终端平台具备了办公、娱乐、社交等多种功能,其存储的数据也变得更加丰富,例如图片、音乐、视频、动画等等。
[0003]用户在享受不同类型移动终端带来的便捷时,也遇到了多终端存储的数据统一性管理的问题。多终端数据同步的现有方案之一可以基于SyncML(Synchronizat1n MarkupLanguage)协议进行,SyncML是通用的移动数据同步化协议,可以在兼容的设备、程序及网络进行数据同步。
[0004]此外,移动终端上的原有同步架构可以处理同步事件,使登录了一个账号的移动终端能够保持数据的同步。
[0005]例如:
[0006]A、B两个移动终端登录同一账号的情况下,
[0007]当A新增一个便签,同步后,B也会得到这个新增的便签;
[0008]当A改变一个便签的内容,同步后,B也会改变这个便签;
[0009]当A删除一个便签,同步后,B也会删除这个便签。
[0010]因此,对于单个数据的处理,现有的同步架构是很方便的。
[0011]但是,客户端的数据很多是以文件与文件夹形式出现的。例如,便签应用的便签和便签夹、联系人应用的群组和联系人。同步不仅要保证数据正确完整,文件与文件夹的关系也要正确维护,文件与文件夹的关系,是一项重要的数据项,不能丢失或搞错。
[0012]例如:A在联系人里面创建一个群组G,G里面有一个联系人C,同步之后要求其他的客户端,例如B,不但要有G和c,而且G和c的关系还要存在。
[0013]现有的同步架构不支持文件与文件夹的关系同步,所以同步联系人群组的时候,需要在具体应用的客户端用内容提供者contentproviders去写逻辑。
[0014]例如,便签应用的内容提供者contentprovider来维护便签(文件)与便签夹(文件夹)的关系。Contentprovider需要很多的字段,逻辑去维护便签和便签夹的群组关系,所有的新增、修改、删除逻辑都在contentprovider中判断。
[0015]如果同步有多个同步资源,每个同步资源都对应一个应用。比如便签应用、书签应用、联系人应用、音乐.....,那么所有这些应用都要在contentprovider (内容提供者)中处理文件和文件夹的复杂逻辑关系,则至少会存在以下问题:
[00??]文件与文件夹的关系增加了内容提供者contentprovider的复杂度;
[0017]每个应用都要写自己的逻辑,例如便签写了一遍,联系人又要重写,书签也要重写,一些可以复用的逻辑都要重复;
[0018]加深了同步对应用的依赖,且同步不能灵活的调整文件与文件夹的关系。

【发明内容】

[0019]本发明实施例提供一种移动终端中群组数据与非群组数据同步的方法和装置,能够在群组数据与非群组数据同步时,简化客户端的处理。
[0020]本发明实施例提供一种移动终端中群组数据与非群组数据同步的方法,包括:
[0021 ] 如果查询到新群组数据,为所述新群组数据生成Parent-source id,在所述新群组数据上传到服务器后,将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中;
[0022]如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中;
[0023]当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
[0024]本发明实施例提供一种用于群组数据与非群组数据同步的移动终端,包括:
[0025]第一处理模块,用于如果查询到新群组数据,为所述新群组数据生成Parent-sourceid, 在所述新群组数据上传到服务器后 ,将所述新群组数据的Parent-sourceid 更新到客户端数据库的主表中;
[0026]第二处理模块,用于如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中;
[0027]第三处理模块,用于当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
[0028]和现有技术相比,本发明实施例通过加入群组数据的逻辑,群组数据的设置使得所有的群组数据和非群组数据的处理都在同步框架中实现,不需要客户端在处理,简化了客户端的结构。
【附图说明】
[0029]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030]图1为本发明的一个具体实施例中移动终端中群组数据与非群组数据同步的方法的流程示意图;
[0031]图2为本发明的一个具体实施例中移动终端中群组数据与非群组数据同步的方法的详细流程示意图;
[0032]图3为本发明的一个具体实施例中向服务器新增数据的流程示意图;
[0033]图4为本发明的一个具体实施例中从服务器获取数据的流程示意图;
[0034]图5为本发明的一个具体实施例中用于群组数据与非群组数据同步的移动终端的结构示意图。
【具体实施方式】
[0035]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]同步数据的时候,数据可能在多个客户端展现,不同的数据用sourceid来唯一标示。Sourceid是可以在同步向服务器新增数据的时候,给数据生成的唯一的字符串。服务器也是用sourceid来表示一个数据,数据在服务器插入成功后,可以同时把数据对应的sourceid更新到数据库中。
[0037]Source id是非群组数据的唯一标示。
[0038]Parent-source id是群组数据的 source id
[0039]在本发明实施例中,群组数据等同于文件夹,例如便签夹,联系人群组,邮件组等等;非群组数据等同于文件,例如便签,联系人,邮件等等。
[0040]实施例一:
[0041]图1为本发明的一个具体实施例中移动终端中群组数据与非群组数据同步的方法的流程示意图。
[0042]如图1所示,该方法应用于移动终端上,包括:
[0043]步骤Sll,如果查询到新群组数据,为所述新群组数据生成Parent-sourceid,在所述新群组数据上传到服务器后,将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中;
[0044]步骤S12,如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中;
[0045]步骤S13,当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
[0046]实施例二:
[0047]图2为本发明的一个具体实施例中移动终端中群组数据与非群组数据同步的方法的详细流程示意图。
[0048]如图2所示,该方法应用于移动终端上,包括:
[0049]步骤S21,向服务器上传新群组数据和新非群组数据。
[0050]本步骤的具体流程如图3所示,包括:
[0051 ] 步骤S211,查询新群组数据,为新群组数据生成Parent-sourceid,并上传到服务器。
[0052]在本步骤中,sourceid是同步向服务器新增或修改数据的时候才会生成,没有同步过的数据sourceid是空。
[0053]如果由用户引发的数据库操作,进行新增或修改操作时会把新群组数据在客户端数据库的主表中dirty设置为I,表示这个群组数据为新群组数据。
[0054]在客户端数据库的主表中查询dirty为l,Parent_sourceid为空的数据。如果查询到,则为新群组数据,可以为新群组数据生成Parent-sourceid,并将新群组数据上传到服务器。
[0055]步骤S212,将新群组数据的Parent-sourceid更新到客户端数据库的主表中。
[0056]在本步骤中,为了提高同步的效率,预先设置同时更新的数量,等上传到服务器的群组数据达到设置的数量时,例如100个,再统一把这些新群组数据的Parent-sourceid写到客户端数据库的主表中。
[0057]步骤S213,查询新非群组数据,为新非群组数据生成sourceid,并上传到服务器。
[0058]在本步骤中,在客户端数据库的子表中查询dirty为I,sourceid为空的数据。如果查询到,则为新非群组数据,可以为新群组数据生成sourceid,并将新非群组数据上传到服务器。
[0059]由于所有的群组数据已经同步过,所以可以查到子表的sourceid对应的主表的Parent-sourceidο
[0060]步骤S214,将新非群组数据的sourceid更新到客户端数据库的子表中。
[0061 ]步骤S22,从服务器获取群组数据和非群组数据。
[0062 ] 本步骤的具体流程如图4所示,包括:
[0063]步骤S221,根据群组数据的Parent-sourceid,从服务器上将群组数据下载到客户端数据库的主表中。
[0064]步骤S222,根据非群组数据sourceid,从服务器上将非群组数据下载到客户端数据库的子表中。
[0065]步骤S223,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
[0066]值得注意的是,维护主子表的关系不仅可以放到子表数据中,让子表数据记住它的主表数据的Parent-sourceid,也可以让主表信息维护一个子表数据sourceid的集合。
[0067]实施例三:
[0068]图5为本发明的一个具体实施例中用于群组数据与非群组数据同步的移动终端的结构示意图。
[0069 ]如图5所示,本发明的移动终端包括:
[0070]第一处理模块51,用于如果查询到新群组数据,为所述新群组数据生成Parent-sourceid, 在所述新群组数据上传到服务器后 ,将所述新群组数据的Parent-sourceid 更新到客户端数据库的主表中;
[0071]第二处理模块52,用于如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中;
[0072]53,用于当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
[0073]具体地,
[0074]所述第一处理模块查询新群组数据,具体为:
[0075]所述新群组数据包括新增或修改的群组数据;
[0076]当对群组数据进行新增或修改时,将所述新群组数据在客户端数据库的主表中dirty设置为第一值;
[0077]在所述客户端数据库的主表中查询到dirty为I且Parent-source id为空的数据,则为所述新群组数据。
[0078]所述第一处理模块将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中,具体为:
[0079]当上传到服务器的新群组数据的数量达到预设值时,将新群组数据的Parent-sourceid统一更新到客户端数据库的主表中。
[0080]所述第二处理模块查询新非群组数据,具体为:
[0081 ]所述新非群组数据包括新增或修改的非群组数据;
[0082]当对非群组数据进行新增或修改时,将所述新非群组数据在客户端数据库的子表中dirty设置为第一值;
[0083]在所述客户端数据库的子表中查询到dirty为I且sourceid为空的数据,则为所述新非群组数据。
[0084]所述第三处理模块,具体用于:
[0085]根据群组数据的Parent-sourceid,从服务器上将群组数据下载到客户端数据库的主表中;
[0086]根据非群组数据sourceid,从服务器上将非群组数据下载到客户端数据库的子表中;
[0087]根据子表的source id查找对应主表的Parent-source id,关联所述新群组数据和所述新非群组数据。
[0088]本发明实施例通过在现有的同步框架中加入了群组数据的逻辑,群组数据的设置使得所有的群组数据和非群组数据的处理都在同步框架中实现,不需要客户端在处理,简化了客户端的结构。
[0089]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0090]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0091]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种移动终端中群组数据与非群组数据同步的方法,其特征在于,包括: 如果查询到新群组数据,为所述新群组数据生成Parent-source id,在所述新群组数据上传到服务器后,将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中; 如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中; 当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。2.根据权利要求1所述的移动终端中群组数据与非群组数据同步的方法,其特征在于,所述如果查询到新群组数据的步骤包括: 所述新群组数据包括新增或修改的群组数据; 当对群组数据进行新增或修改时,将所述新群组数据在客户端数据库的主表中dirty设置为第一值; 在所述客户端数据库的主表中查询到dirty为I且Parent-sourceid为空的数据,贝Ij为所述新群组数据。3.根据权利要求2所述的移动终端中群组数据与非群组数据同步的方法,其特征在于,所述将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中的步骤包括: 当上传到服务器的新群组数据的数量达到预设值时,将新群组数据的Parent-sourceid统一更新到客户端数据库的主表中。4.根据权利要求1所述的移动终端中群组数据与非群组数据同步的方法,其特征在于,所述如果查询到新非群组数据的步骤包括: 所述新非群组数据包括新增或修改的非群组数据; 当对非群组数据进行新增或修改时,将所述新非群组数据在客户端数据库的子表中dirty设置为第一值; 在所述客户端数据库的子表中查询到dirty为I且sourceid为空的数据,则为所述新非群组数据。5.根据权利要求1?4中任一项所述的移动终端中群组数据与非群组数据同步的方法,其特征在于,所述当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据的步骤包括: 根据群组数据的Parent-sourceid,从服务器上将群组数据下载到客户端数据库的主表中; 根据非群组数据sourceid,从服务器上将非群组数据下载到客户端数据库的子表中; 根据子表的source id查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。6.—种用于群组数据与非群组数据同步的移动终端,其特征在于,包括: 第一处理模块,用于如果查询到新群组数据,为所述新群组数据生成Parent-sourceid, 在所述新群组数据上传到服务器后 ,将所述新群组数据的Parent-sourceid 更新到客户端数据库的主表中; 第二处理模块,用于如果查询到新非群组数据,为所述新非群组数据生成sourceid,在所述新非群组数据上传到服务器后,将所述新非群组数据的sourceid更新到客户端数据库的子表中; 第三处理模块,用于当从服务器上下载新群组数据和新非群组数据时,根据子表的sourceid查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。7.根据权利要求6所述的用于群组数据与非群组数据同步的移动终端,其特征在于,所述第一处理模块查询新群组数据,具体为: 所述新群组数据包括新增或修改的群组数据; 当对群组数据进行新增或修改时,将所述新群组数据在客户端数据库的主表中dirty设置为第一值; 在所述客户端数据库的主表中查询到dirty为I且Parent-sourceid为空的数据,贝Ij为所述新群组数据。8.根据权利要求7所述的用于群组数据与非群组数据同步的移动终端,其特征在于,所述第一处理模块将所述新群组数据的Parent-sourceid更新到客户端数据库的主表中,具体为: 当上传到服务器的新群组数据的数量达到预设值时,将新群组数据的Parent-sourceid统一更新到客户端数据库的主表中。9.根据权利要求6所述的用于群组数据与非群组数据同步的移动终端,其特征在于,所述第二处理模块查询新非群组数据,具体为: 所述新非群组数据包括新增或修改的非群组数据; 当对非群组数据进行新增或修改时,将所述新非群组数据在客户端数据库的子表中dirty设置为第一值; 在所述客户端数据库的子表中查询到dirty为I且sourceid为空的数据,则为所述新非群组数据。10.根据权利要求6?9中任一项所述的用于群组数据与非群组数据同步的移动终端,其特征在于,所述第三处理模块,具体用于: 根据群组数据的Parent-sourceid,从服务器上将群组数据下载到客户端数据库的主表中; 根据非群组数据sourceid,从服务器上将非群组数据下载到客户端数据库的子表中; 根据子表的source id查找对应主表的Parent-sourceid,关联所述新群组数据和所述新非群组数据。
【文档编号】H04W8/20GK105916121SQ201510921289
【公开日】2016年8月31日
【申请日】2015年12月12日
【发明人】江丹, 杨丹
【申请人】乐视移动智能信息技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1