CN105991770B - 数据更新方法、客户端及服务器 - Google Patents
数据更新方法、客户端及服务器 Download PDFInfo
- Publication number
- CN105991770B CN105991770B CN201610298941.7A CN201610298941A CN105991770B CN 105991770 B CN105991770 B CN 105991770B CN 201610298941 A CN201610298941 A CN 201610298941A CN 105991770 B CN105991770 B CN 105991770B
- Authority
- CN
- China
- Prior art keywords
- label
- client
- state
- data
- specified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Abstract
本发明公开了一种数据更新方法、客户端及服务器。其中,该方法包括:接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件,且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签,根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。本发明解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据更新方法、客户端及服务器。
背景技术
目前,市面上绝大多数应用软件APP都设置有标签,如绝大多数新闻类软件都有频道类标签,绝大多数阅读类软件都有书签类标签。随着移动设备的普及,使同一用户的同一APP在多终端、多平台(如web、android、ios等)上保持同步是必不可少的。在相关技术中,绝大多数APP都支持动态添加、删除标签、以及修改标签顺序等全量数据更新操作。然而,如果标签的数据量较大,那么使用上述客户端(即应用程序,APP)同步技术方案,即全量数据更新方案,会导致流量消耗大,给用户造成经济损失。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据更新方法、客户端及服务器,以至少解决相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
根据本发明实施例的一个方面,提供了一种数据更新方法,包括:接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,上述指定标签为已经在其它客户端中更新过的标签,上述客户端与上述其他客户端为同种应用软件,且两者安装在不同的终端设备上,上述应用软件具有可供用户调整的分类标签和/或标记标签;根据接收到的标签更新数据,对上述客户端中的上述指定标签进行状态更新。
根据本发明实施例的另一方面,还提供了一种数据更新方法,包括:将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,上述指定标签为已经在其它客户端中更新过的标签,上述客户端与上述其他客户端为同种客户端,且两者安装在不同的终端设备上,其中,上述客户端用于接收并根据接收到的标签更新数据,对上述客户端中的上述指定标签进行状态更新。
根据本发明实施例的一个方面,提供了一种客户端,用于进行数据更新,包括:第一接收单元,用于接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,上述指定标签为已经在其它客户端中更新过的标签,上述客户端与上述其他客户端为同种应用软件,且两者安装在不同的终端设备上,上述应用软件具有可供用户调整的分类标签和/或标记标签;第一更新单元,用于根据接收到的标签更新数据,对上述客户端中的上述指定标签进行状态更新。
根据本发明实施例的另一方面,还提供了一种服务器,用于进行数据更新,包括:发送单元,用于将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,上述指定标签为已经在其它客户端中更新过的标签,上述客户端与上述其他客户端为同种新闻类软件或同种应用软件,且两者安装在不同的终端设备上,上述应用软件具有可供用户调整的分类标签和/或标记标签,其中,上述客户端用于接收并根据接收到的标签更新数据,对上述客户端中的上述指定标签进行状态更新。
在本发明实施例中,采用只对部分指定标签进行数据更新的增量更新方式,通过接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,上述指定标签为已经在其它客户端中更新过的标签,上述客户端与上述其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签,上述应用软件具有可供用户调整的分类标签和/或标记标签;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新,达到了避免对全部标签进行全量数据更新的目的,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种数据更新方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的一种可选的数据更新方法的流程图;
图3是根据本发明实施例的另一种可选的数据更新方法的流程图;
图4是根据本发明实施例的一种可选的客户端的示意图;
图5是根据本发明实施例的一种可选的服务器的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种数据更新方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例1所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种数据更新方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的数据更新方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的数据更新方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的数据更新方法。图2是根据本发明实施例的一种可选的数据更新方法的流程图。如图2所示,该方法包括以下步骤:
步骤S202,接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签,且两者安装在不同的终端设备上;
步骤S204,根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
需要说明的是,本发明实施例的上述技术方案可以应用于新闻类软件、阅读类软件、视频类软件以及电商的相关软件等,其中,以新闻类软件和视频类软件为例,分类标签可以是频道类标签,如体育、娱乐、综艺、新闻等标签;以阅读类软件为例,标记标签可以是书签类标签,如用于标记某读者对某本书的阅读进度的标签。以下以应用于新闻类客户端为例详细阐述本发明。
以新闻类客户端A为例,假设用户1分别在苹果手机、安卓手机和PC上安装了新闻类客户端A。当用户1分别使用上述的苹果手机、安卓手机和PC机登录新闻类客户端A后,安装在这些终端设备上的新闻类客户端A可以实时、定时、或者在退出之前,按照要求将所有频道标签的配置信息和发生改变的标签的状态更新信息上传给服务器。服务器在接收到各个客户端上传的相关信息之后,会基于用户1的标识信息,向对应的客户端发送标签更新数据,使该客户端基于标签更新数据对指定标签进行状态更新。使用本发明的上述技术方案,如果用户1通过苹果手机修改了“财经”频道的标签位置,则新闻类客户端A会通过苹果手机将所有标签的配置信息以及“财经”频道的状态更新信息上传给服务器,而服务器在接收到上述相关信息之后,会将“财经”频道的状态更新信息以及“财经”频道的标签配置信息发送给安装在该用户1的安卓手机和PC机上的新闻类客户端A,以使这些终端设备上安装的新闻类客户端A与苹果手机上安装的新闻类客户端A保持同步,即更新这些终端设备上安装的新闻类客户端A的指定标签(即“财经”频道标签),使其与苹果手机上安装的新闻类客户端A的“财经”频道标签保持同步。
其中,上述配置信息包括但不限于:标签的编号(服务器端存储的对应标签条目的唯一标识)、名称及位置等;上述状态更新信息包括但不限于:标签在本地的修改状态(新增、修改、删除)以及该条更新记录对应的更新时间等。实施时,服务器可以在用户重新登录或打开客户端时,将用于对客户端中的指定标签进行状态更新的标签更新数据发送给该客户端。
在本发明实施例中,采用只对部分指定标签(如“财经”频道标签)进行数据更新的增量更新方式,通过接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新,达到了避免对全部标签进行全量数据更新的目的,最大程度的减少云同步的条目个数,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
需要说明的是,本发明实施例提供的技术方案除了可以应用于上述新闻类客户端之外,还可以应用于电子阅读器等其它客户端的应用场景,在此不再赘述。
在上述实施方式中,各客户端需要将所有标签的配置信息以及状态发生改变的标签的状态更新信息全部发送服务器(即进行数据全量发送),这样会消耗大量流量,给用户造成经济损失,导致用户体验不佳,因此,为了优化上述数据更新方案,最大限度地节省云同步时消耗的流量以及改善用户体验,可选地,上述方法还包括:
S2,在数据更新过程中,接收用户输入的用于对客户端中的选定标签进行状态更新的标签更新指令;
S4,根据接收到的标签更新指令,对客户端中的选定标签进行状态更新;
S6,将选定标签对应的配置信息以及根据标签更新指令对选定标签进行状态更新时生成的状态更新信息发送至服务器,其中,服务器用于接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
基于上述实施方式中的示例,在数据更新过程中,若用户1想要删除原有的“娱乐”频道标签,就可以通过苹果手机输入对应的标签更新指令,以删除安装在该苹果手机上的新闻类客户端A中的“娱乐”频道标签。同时,在删除“娱乐”频道标签后,该新闻类客户端A会利用苹果手机将“娱乐”频道标签的配置信息以及根据“娱乐”频道标签删除指令删除“娱乐”频道标签时生成的状态更新信息发送至服务器。其中,该服务器接收并将上述配置信息和状态更新信息作为标签更新数据发送给与上述新闻类客户端A具有相同属性(如都是百度新闻类客户端)但安装在不同终端设备(如安卓手机和/或PC机)上的其它客户端,以删除其它客户端中的“娱乐”频道标签。
通过本发明实施例,各客户端只需要将状态发生变更的标签的配置信息以及状态发生改变的标签的状态更新信息等增量数据发送服务器,这样的云同步技术方案可以减少流量消耗,最大限度地节约用户支出的流量使用费,改善用户体验。
需要说明的是,标签更新包括但不限于:标签增加、标签删除和标签修改等,进一步,标签修改包括但不限于标签位置调整。以下以调整标签位置为例详细阐述本发明。可选地,根据接收到的标签更新数据,对客户端中的指定标签进行状态更新包括:根据接收到的标签位置修改数据,对客户端中的指定标签进行标签位置修改,该步骤包括:
S8,解析标签位置修改数据,得到对应的标签位置修改指令;
S10,当标签位置修改指令指示将指定标签的位置调整至第一位置时,将原第一位置对应的数字减1作为指定标签的调整后的位置对应的数字;
S12,当标签位置修改指令指示将指定标签的位置调整至倒数第一位置时,将原倒数第一位置对应的数字加1作为指定标签的调整后的位置对应的数字;
S14,当标签位置修改指令指示将指定标签的位置调整至除第一位置和倒数第一位置之外的其它位置时,将与调整后的位置相邻的两个位置对应的数字相加并除以2作为指定标签的调整后的位置对应的数字;
S16,根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改。
需要说明的是,在本发明实施例中,使用数字定义客户端的标签的位置。例如,可以按照数字由小到大进行对标签进行排序。采用本发明实施例提供的技术方案,修改任意一个标签的位置时,可以通过修改与该标签的位置对应的数字来实现。实施时,为了实现多终端多平台同步技术,安装在终端1上的客户端只需将发生变化的标签条目的相关信息上传到服务器,这样,当用户使用安装在终端2上的客户端下拉数据时,服务器会将增量数据(即发生变化的标签条目的相关信息)下发给该客户端。
通过本发明实施例,采用增量上传与增量下拉方式分别代替全量上传与全量下拉方式,可以最大限度地提升云同步的效率,同时可以最大限度地为用户节省云同步时消耗的流量,从而达到改善用户体验的效果。
实施时,可以将客户端的标签定义为一种数据结构,该数据结构包含但不限于如下字段:标签编号(这是服务器端存储的关于当前标签的唯一标识)、标签名称、标签位置等,以及标签的本地修改状态(包括但不限于新增、修改、删除标签等)、该条修改记录对应的修改时间等。需要说明的是,对于任意标签而言,在客户端定义之后,需要在服务器端的数据库和缓存中存储对应的具有相同数据结构的数据。另外,客户端向服务器上传数据时,每次都需要上传上次同步操作对应的更新时间以及在执行上次同步操作后客户端在本地修改的标签条目对应的相关数据。也即,若客户端本地没有修改任何标签,则无需执行上报操作。需要说明的是,服务器每次同步成功后,会向对应的客户端下发本次同步的最新一条的更新时间。其中,客户端的数据同步包括仅上报和数据上报/下拉两种。
如果标签的数量很大,则普通的交换标签位置的方法会存在两方面的缺点:第一,本地需要更新的标签条目数量多;第二,云同步的标签条目数量也会多,性能不好。因此,为了克服上述缺陷,本发明实施例采用一种本地数据处理量最少,并且云同步数据更新量最少的方式,其具体算法如下:初始化时,按照从小到大的顺序依次设置标签的位置对应的数字(以下称为位置值),例如,对于n个标签而言,各标签的位置值可以依次设置为0到n-1,如假设某客户端只有3个标签(分别为A、B、C),则它们的位置值分别为0、1、2。当移动B时,如果将其移动到第一个位置,则B的位置值将变为第一个位置值减1,即A的位置值减1(=(0-1));如果将其移动到最后一个位置,则B的位置值将变为的最后一个位置值加1,即C的位置值减1(=(2+1));当移动C时,如果将其移动到中间某个位置,则C的位置值将变为移动后位置的前一个位置值和后一个位置值之和除以2(=(0+1)/2)。
通过本发明实施例,无需修改所有标签的位置值,可以最大限度地减少修改位置的操作次数,同时为客户端提供一种用于在本地移动标签位置时的存储量最少、存储操作最优的存储方式。
然而,基于上述实施方式的示例,在以上三种位置修改情况下,当无法生成值时(即生成值超过一定范围时),可能会导致标签位置修改无效,甚至无法修改标签位置,为了克服上述缺陷,在生成值超过一定范围的情况下,可以重置所有位置值,例如可以依次将位置值设置为从0开始递增的整数。例如,可选地,在根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改之后,上述方法还包括:
S18,判断将与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值是否超出预设数值范围;
S20,在判断出与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值超出预设数值范围的情况下,重置客户端中所有标签的位置所对应的数字。
通过上述实施例,在保证云同步过程中数据更新量最少,提升客户端和服务器的数据更新效率,同时保证数据更新的有效性和正确性。
实施例2
根据本发明实施例,还提供了另一种数据更新方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例2所提供的方法实施例可以在服务器中执行。图3是根据本发明实施例的另一种可选的数据更新方法的流程图。如图3所示,该方法包括以下步骤:
步骤S302,将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签,其中,客户端用于接收并根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
需要说明的是,本发明实施例的上述技术方案可以应用于新闻类软件、阅读类软件、视频类软件以及电商的相关软件等,其中,以新闻类软件和视频类软件为例,分类标签可以是频道类标签,如体育、娱乐、综艺、新闻等标签;以阅读类软件为例,标记标签可以是书签类标签,如用于标记某读者对某本书的阅读进度的标签。以下以应用于新闻类客户端为例详细阐述本发明。
以新闻类客户端A为例,假设用户1分别在苹果手机、安卓手机和PC上安装了新闻类客户端A。当用户1分别使用上述的苹果手机、安卓手机和PC机登录新闻类客户端A后,安装在这些终端设备上的新闻类客户端A可以实时、定时、或者在退出之前,按照要求将所有频道标签的配置信息和发生改变的标签的状态更新信息上传给服务器。服务器在接收到各个客户端上传的相关信息之后,会基于用户1的标识信息,向对应的客户端发送标签更新数据,使该客户端基于标签更新数据对指定标签进行状态更新。使用本发明的上述技术方案,如果用户1通过苹果手机修改了“财经”频道的标签位置,则新闻类客户端A会通过苹果手机将所有标签的配置信息以及“财经”频道的状态更新信息上传给服务器,而服务器在接收到上述相关信息之后,会将“财经”频道的状态更新信息以及“财经”频道的标签配置信息发送给安装在该用户1的安卓手机和PC机上的新闻类客户端A,以使这些终端设备上安装的新闻类客户端A与苹果手机上安装的新闻类客户端A保持同步,即更新这些终端设备上安装的新闻类客户端A的指定标签(即“财经”频道标签),使其与苹果手机上安装的新闻类客户端A的“财经”频道标签保持同步。
其中,上述配置信息包括但不限于:标签的编号(服务器端存储的对应标签条目的唯一标识)、名称及位置等;上述状态更新信息包括但不限于:标签在本地的修改状态(新增、修改、删除)以及该条更新记录对应的更新时间等。实施时,服务器可以在用户重新登录或打开客户端时,将用于对客户端中的指定标签进行状态更新的标签更新数据发送给该客户端。
在本发明实施例中,采用只对部分指定标签(如“财经”频道标签)进行数据更新的增量更新方式,达到了避免对全部标签进行全量数据更新的目的,最大程度的减少云同步的条目个数,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
需要说明的是,本发明实施例提供的技术方案除了可以应用于上述新闻类客户端之外,还可以应用于电子阅读器等其它客户端的应用场景,在此不再赘述。
在上述实施方式中,各客户端需要将所有标签的配置信息以及状态发生改变的标签的状态更新信息全部发送服务器(即进行数据全量发送),这样会消耗大量流量,给用户造成经济损失,导致用户体验不佳,因此,为了优化上述数据更新方案,最大限度地节省云同步时消耗的流量以及改善用户体验,可选地,在数据更新过程中,客户端还用于接收并根据用户输入的用于对客户端中的选定标签进行状态更新的标签更新指令,对客户端中的选定标签进行状态更新,同时将选定标签对应的配置信息以及根据标签更新指令对选定标签进行状态更新时生成的状态更新信息发送至服务器,其中,上述方法还包括:接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
基于上述实施方式中的示例,在数据更新过程中,若用户1想要删除原有的“娱乐”频道标签,就可以通过苹果手机输入对应的标签更新指令,以删除安装在该苹果手机上的新闻类客户端A中的“娱乐”频道标签。同时,在删除“娱乐”频道标签后,该新闻类客户端A会利用苹果手机将“娱乐”频道标签的配置信息以及根据“娱乐”频道标签删除指令删除“娱乐”频道标签时生成的状态更新信息发送至服务器。其中,该服务器接收并将上述配置信息和状态更新信息作为标签更新数据发送给与上述新闻类客户端A具有相同属性(如都是百度新闻类客户端)但安装在不同终端设备(如安卓手机和/或PC机)上的其它客户端,以删除其它客户端中的“娱乐”频道标签。
通过本发明实施例,各客户端只需要将状态发生变更的标签的配置信息以及状态发生改变的标签的状态更新信息等增量数据发送服务器,这样的云同步技术方案可以减少流量消耗,最大限度地节约用户支出的流量使用费,改善用户体验。
可选地,在数据更新过程中,在将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端之前,上述方法还包括:
S22,解析状态更新信息,得到对应的状态更新时间;
S24,判断状态更新时间是否满足预设时间条件,其中,在判断出状态更新时间满足预设时间条件的情况下,执行将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端的步骤。
也即,在设计客户端和服务器端增量云同步方案时,将客户端对标签的修改时间作为服务器判断标签条目是否满足同步条件的依据,可以保证客户端更新时间与服务器更新时间的同步性。
客户端在进行标签云同步时,首先会在本地记录具体调整的标签条目,当同步时机到来时,会将本地修改的部分和上次同步成功的更新时间上传给服务器,而在同步过程中,如果有修改的部分,则需要进行更新设置,同步成功后,又会将更新设置后对应的更新状态上传至服务器,以备下次更新使用。
对于多个终端、多种平台同时上报的情况,服务器会按照更新时间,以更新时间最大的标签条目为依据指示对应的客户端进行同步操作,而更新时间小的标签条目则不会被同步。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例3
根据本发明实施例,还提供了一种用于实施上述实施1中提供的数据更新方法的客户端,如图4所示,该客户端,用于进行数据更新,包括:第一接收单元402,用于接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签;第一更新单元404,用于根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
需要说明的是,本发明实施例的上述技术方案可以应用于新闻类软件、阅读类软件、视频类软件以及电商的相关软件等,其中,以新闻类软件和视频类软件为例,分类标签可以是频道类标签,如体育、娱乐、综艺、新闻等标签;以阅读类软件为例,标记标签可以是书签类标签,如用于标记某读者对某本书的阅读进度的标签。以下以应用于新闻类客户端为例详细阐述本发明。
以新闻类客户端A为例,假设用户1分别在苹果手机、安卓手机和PC上安装了新闻类客户端A。当用户1分别使用上述的苹果手机、安卓手机和PC机登录新闻类客户端A后,安装在这些终端设备上的新闻类客户端A可以实时、定时、或者在退出之前,按照要求将所有频道标签的配置信息和发生改变的标签的状态更新信息上传给服务器。服务器在接收到各个客户端上传的相关信息之后,会基于用户1的标识信息,向对应的客户端发送标签更新数据,使该客户端基于标签更新数据对指定标签进行状态更新。使用本发明的上述技术方案,如果用户1通过苹果手机修改了“财经”频道的标签位置,则新闻类客户端A会通过苹果手机将所有标签的配置信息以及“财经”频道的状态更新信息上传给服务器,而服务器在接收到上述相关信息之后,会将“财经”频道的状态更新信息以及“财经”频道的标签配置信息发送给安装在该用户1的安卓手机和PC机上的新闻类客户端A,以使这些终端设备上安装的新闻类客户端A与苹果手机上安装的新闻类客户端A保持同步,即更新这些终端设备上安装的新闻类客户端A的指定标签(即“财经”频道标签),使其与苹果手机上安装的新闻类客户端A的“财经”频道标签保持同步。
其中,上述配置信息包括但不限于:标签的编号(服务器端存储的对应标签条目的唯一标识)、名称及位置等;上述状态更新信息包括但不限于:标签在本地的修改状态(新增、修改、删除)以及该条更新记录对应的更新时间等。实施时,服务器可以在用户重新登录或打开客户端时,将用于对客户端中的指定标签进行状态更新的标签更新数据发送给该客户端。
在本发明实施例中,采用只对部分指定标签(如“财经”频道标签)进行数据更新的增量更新方式,通过接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新,达到了避免对全部标签进行全量数据更新的目的,最大程度的减少云同步的条目个数,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
需要说明的是,本发明实施例提供的技术方案除了可以应用于上述新闻类客户端之外,还可以应用于电子阅读器等其它客户端的应用场景,在此不再赘述。
在上述实施方式中,各客户端需要将所有标签的配置信息以及状态发生改变的标签的状态更新信息全部发送服务器(即进行数据全量发送),这样会消耗大量流量,给用户造成经济损失,导致用户体验不佳,因此,为了优化上述数据更新方案,最大限度地节省云同步时消耗的流量以及改善用户体验,可选地,上述客户端还包括:第二接收单元,用于在数据更新过程中,接收用户输入的用于对客户端中的选定标签进行状态更新的标签更新指令;第二更新单元,用于根据接收到的标签更新指令,对客户端中的选定标签进行状态更新;发送单元,用于将选定标签对应的配置信息以及根据标签更新指令对选定标签进行状态更新时生成的状态更新信息发送至服务器,其中,服务器用于接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
基于上述实施方式中的示例,在数据更新过程中,若用户1想要删除原有的“娱乐”频道标签,就可以通过苹果手机输入对应的标签更新指令,以删除安装在该苹果手机上的新闻类客户端A中的“娱乐”频道标签。同时,在删除“娱乐”频道标签后,该新闻类客户端A会利用苹果手机将“娱乐”频道标签的配置信息以及根据“娱乐”频道标签删除指令删除“娱乐”频道标签时生成的状态更新信息发送至服务器。其中,该服务器接收并将上述配置信息和状态更新信息作为标签更新数据发送给与上述新闻类客户端A具有相同属性(如都是百度新闻类客户端)但安装在不同终端设备(如安卓手机和/或PC机)上的其它客户端,以删除其它客户端中的“娱乐”频道标签。
通过本发明实施例,各客户端只需要将状态发生变更的标签的配置信息以及状态发生改变的标签的状态更新信息等增量数据发送服务器,这样的云同步技术方案可以减少流量消耗,最大限度地节约用户支出的流量使用费,改善用户体验。
需要说明的是,标签更新包括但不限于:标签增加、标签删除和标签修改等,进一步,标签修改包括但不限于标签位置调整。以下以调整标签位置为例详细阐述本发明。可选地,第一更新单元,还用于根据接收到的标签位置修改数据,对客户端中的指定标签进行标签位置修改,其中,上述第一更新单元包括:解析模块,用于解析标签位置修改数据,得到对应的标签位置修改指令;第一确定模块,用于当标签位置修改指令指示将指定标签的位置调整至第一位置时,将原第一位置对应的数字减1作为指定标签的调整后的位置对应的数字;第二确定模块,用于当标签位置修改指令指示将指定标签的位置调整至倒数第一位置时,将原倒数第一位置对应的数字加1作为指定标签的调整后的位置对应的数字;第三确定模块,用于当标签位置修改指令指示将指定标签的位置调整至除第一位置和倒数第一位置之外的其它位置时,将与调整后的位置相邻的两个位置对应的数字相加并除以2作为指定标签的调整后的位置对应的数字;修改模块,用于根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改。需要说明的是,在本发明实施例中,使用数字定义客户端的标签的位置。例如,可以按照数字由小到大进行对标签进行排序。采用本发明实施例提供的技术方案,修改任意一个标签的位置时,可以通过修改与该标签的位置对应的数字来实现。实施时,为了实现多终端多平台同步技术,安装在终端1上的客户端只需将发生变化的标签条目的相关信息上传到服务器,这样,当用户使用安装在终端2上的客户端下拉数据时,服务器会将增量数据(即发生变化的标签条目的相关信息)下发给该客户端。
通过本发明实施例,采用增量上传与增量下拉方式分别代替全量上传与全量下拉方式,可以最大限度地提升云同步的效率,同时可以最大限度地为用户节省云同步时消耗的流量,从而达到改善用户体验的效果。
实施时,可以将客户端的标签定义为一种数据结构,该数据结构包含但不限于如下字段:标签编号(这是服务器端存储的关于当前标签的唯一标识)、标签名称、标签位置等,以及标签的本地修改状态(包括但不限于新增、修改、删除标签等)、该条修改记录对应的修改时间等。需要说明的是,对于任意标签而言,在客户端定义之后,需要在服务器端的数据库和缓存中存储对应的具有相同数据结构的数据。另外,客户端向服务器上传数据时,每次都需要上传上次同步操作对应的更新时间以及在执行上次同步操作后客户端在本地修改的标签条目对应的相关数据。也即,若客户端本地没有修改任何标签,则无需执行上报操作。需要说明的是,服务器每次同步成功后,会向对应的客户端下发本次同步的最新一条的更新时间。其中,客户端的数据同步包括仅上报和数据上报/下拉两种。
如果标签的数量很大,则普通的交换标签位置的方法会存在两方面的缺点:第一,本地需要更新的标签条目数量多;第二,云同步的标签条目数量也会多,性能不好。因此,为了克服上述缺陷,本发明实施例采用一种本地数据处理量最少,并且云同步数据更新量最少的方式,其具体算法如下:初始化时,按照从小到大的顺序依次设置标签的位置对应的数字(以下称为位置值),例如,对于n个标签而言,各标签的位置值可以依次设置为0到n-1,如假设某客户端只有3个标签(分别为A、B、C),则它们的位置值分别为0、1、2。当移动B时,如果将其移动到第一个位置,则B的位置值将变为第一个位置值减1,即A的位置值减1(=(0-1));如果将其移动到最后一个位置,则B的位置值将变为的最后一个位置值加1,即C的位置值减1(=(2+1));当移动C时,如果将其移动到中间某个位置,则C的位置值将变为移动后位置的前一个位置值和后一个位置值之和除以2(=(0+1)/2)。
通过本发明实施例,无需修改所有标签的位置值,可以最大限度地减少修改位置的操作次数,同时为客户端提供一种用于在本地移动标签位置时的存储量最少、存储操作最优的存储方式。
然而,基于上述实施方式的示例,在以上三种位置修改情况下,当无法生成值时(即生成值超过一定范围时),可能会导致标签位置修改无效,甚至无法修改标签位置,为了克服上述缺陷,在生成值超过一定范围的情况下,可以重置所有位置值,例如可以依次将位置值设置为从0开始递增的整数。例如,可选地,上述客户端还包括:判断单元,用于在根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改之后,判断将与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值是否超出预设数值范围;重置单元,用于在判断出与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值超出预设数值范围的情况下,重置客户端中所有标签的位置所对应的数字。
通过上述实施例,在保证云同步过程中数据更新量最少,提升客户端和服务器的数据更新效率,同时保证数据更新的有效性和正确性。
实施例4
根据本发明实施例,还提供了一种用于实施上述实施例2中提供思维数据更新方法的服务器,如图5所示,该服务器,用于进行数据更新,包括:发送单元502,用于将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签,其中,客户端用于接收并根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
需要说明的是,本发明实施例的上述技术方案可以应用于新闻类软件、阅读类软件、视频类软件以及电商的相关软件等,其中,以新闻类软件和视频类软件为例,分类标签可以是频道类标签,如体育、娱乐、综艺、新闻等标签;以阅读类软件为例,标记标签可以是书签类标签,如用于标记某读者对某本书的阅读进度的标签。以下以应用于新闻类客户端为例详细阐述本发明。
以新闻类客户端A为例,假设用户1分别在苹果手机、安卓手机和PC上安装了新闻类客户端A。当用户1分别使用上述的苹果手机、安卓手机和PC机登录新闻类客户端A后,安装在这些终端设备上的新闻类客户端A可以实时、定时、或者在退出之前,按照要求将所有频道标签的配置信息和发生改变的标签的状态更新信息上传给服务器。服务器在接收到各个客户端上传的相关信息之后,会基于用户1的标识信息,向对应的客户端发送标签更新数据,使该客户端基于标签更新数据对指定标签进行状态更新。使用本发明的上述技术方案,如果用户1通过苹果手机修改了“财经”频道的标签位置,则新闻类客户端A会通过苹果手机将所有标签的配置信息以及“财经”频道的状态更新信息上传给服务器,而服务器在接收到上述相关信息之后,会将“财经”频道的状态更新信息以及“财经”频道的标签配置信息发送给安装在该用户1的安卓手机和PC机上的新闻类客户端A,以使这些终端设备上安装的新闻类客户端A与苹果手机上安装的新闻类客户端A保持同步,即更新这些终端设备上安装的新闻类客户端A的指定标签(即“财经”频道标签),使其与苹果手机上安装的新闻类客户端A的“财经”频道标签保持同步。
其中,上述配置信息包括但不限于:标签的编号(服务器端存储的对应标签条目的唯一标识)、名称及位置等;上述状态更新信息包括但不限于:标签在本地的修改状态(新增、修改、删除)以及该条更新记录对应的更新时间等。实施时,服务器可以在用户重新登录或打开客户端时,将用于对客户端中的指定标签进行状态更新的标签更新数据发送给该客户端。
在本发明实施例中,采用只对部分指定标签(如“财经”频道标签)进行数据更新的增量更新方式,达到了避免对全部标签进行全量数据更新的目的,最大程度的减少云同步的条目个数,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
需要说明的是,本发明实施例提供的技术方案除了可以应用于上述新闻类客户端之外,还可以应用于电子阅读器等其它客户端的应用场景,在此不再赘述。
在上述实施方式中,各客户端需要将所有标签的配置信息以及状态发生改变的标签的状态更新信息全部发送服务器(即进行数据全量发送),这样会消耗大量流量,给用户造成经济损失,导致用户体验不佳,因此,为了优化上述数据更新方案,最大限度地节省云同步时消耗的流量以及改善用户体验,可选地,在数据更新过程中,客户端还用于接收并根据用户输入的用于对客户端中的选定标签进行状态更新的标签更新指令,对客户端中的选定标签进行状态更新,同时将选定标签对应的配置信息以及根据标签更新指令对选定标签进行状态更新时生成的状态更新信息发送至服务器,其中,上述服务器还包括:接收单元,用于接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
基于上述实施方式中的示例,在数据更新过程中,若用户1想要删除原有的“娱乐”频道标签,就可以通过苹果手机输入对应的标签更新指令,以删除安装在该苹果手机上的新闻类客户端A中的“娱乐”频道标签。同时,在删除“娱乐”频道标签后,该新闻类客户端A会利用苹果手机将“娱乐”频道标签的配置信息以及根据“娱乐”频道标签删除指令删除“娱乐”频道标签时生成的状态更新信息发送至服务器。其中,该服务器接收并将上述配置信息和状态更新信息作为标签更新数据发送给与上述新闻类客户端A具有相同属性(如都是百度新闻类客户端)但安装在不同终端设备(如安卓手机和/或PC机)上的其它客户端,以删除其它客户端中的“娱乐”频道标签。
通过本发明实施例,各客户端只需要将状态发生变更的标签的配置信息以及状态发生改变的标签的状态更新信息等增量数据发送服务器,这样的云同步技术方案可以减少流量消耗,最大限度地节约用户支出的流量使用费,改善用户体验。
可选地,上述服务器还包括:解析单元,用于在数据更新过程中,在将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端之前,解析状态更新信息,得到对应的状态更新时间;判断单元,用于判断状态更新时间是否满足预设时间条件,其中,接收单元,还用于在判断出状态更新时间满足预设时间条件的情况下,执行将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端的步骤。
也即,在设计客户端和服务器端增量云同步方案时,将客户端对标签的修改时间作为服务器判断标签条目是否满足同步条件的依据,可以保证客户端更新时间与服务器更新时间的同步性。
客户端在进行标签云同步时,首先会在本地记录具体调整的标签条目,当同步时机到来时,会将本地修改的部分和上次同步成功的更新时间上传给服务器,而在同步过程中,如果有修改的部分,则需要进行更新设置,同步成功后,又会将更新设置后对应的更新状态上传至服务器,以备下次更新使用。
对于多个终端、多种平台同时上报的情况,服务器会按照更新时间,以更新时间最大的标签条目为依据指示对应的客户端进行同步操作,而更新时间小的标签条目则不会被同步。
实施例5
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行应用程序(即客户端)的数据更新方法中以下步骤的程序代码:接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
可选地,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器、存储器、以及其他部件。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的数据更新方法、客户端及服务器对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据更新方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行实施例1所提供的数据更新方法的下述步骤:接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
可选的,上述处理器还可以执行如下步骤的程序代码:在数据更新过程中,接收用户输入的用于对客户端中的选定标签进行状态更新的标签更新指令;根据接收到的标签更新指令,对客户端中的选定标签进行状态更新;将选定标签对应的配置信息以及根据标签更新指令对选定标签进行状态更新时生成的状态更新信息发送至服务器,其中,服务器用于接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
可选的,上述处理器还可以执行如下步骤的程序代码:根据接收到的标签位置修改数据,对客户端中的指定标签进行标签位置修改,该步骤包括:解析标签位置修改数据,得到对应的标签位置修改指令;当标签位置修改指令指示将指定标签的位置调整至第一位置时,将原第一位置对应的数字减1作为指定标签的调整后的位置对应的数字;当标签位置修改指令指示将指定标签的位置调整至倒数第一位置时,将原倒数第一位置对应的数字加1作为指定标签的调整后的位置对应的数字;当标签位置修改指令指示将指定标签的位置调整至除第一位置和倒数第一位置之外的其它位置时,将与调整后的位置相邻的两个位置对应的数字相加并除以2作为指定标签的调整后的位置对应的数字;根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改。
可选的,上述处理器还可以执行如下步骤的程序代码:在根据调整后的位置对应的数字,对客户端中的指定标签进行标签位置修改之后,判断将与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值是否超出预设数值范围;在判断出与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值超出预设数值范围的情况下,重置客户端中所有标签的位置所对应的数字。
同理,处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行实施例2所提供的数据更新方法的下述步骤:将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,客户端用于接收并根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
可选的,上述处理器还可以执行如下步骤的程序代码:接收并将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端,以对其它客户端中的指定标签进行状态更新。
可选的,上述处理器还可以执行如下步骤的程序代码:解析状态更新信息,得到对应的状态更新时间;判断状态更新时间是否满足预设时间条件,其中,在判断出状态更新时间满足预设时间条件的情况下,执行将配置信息和状态更新信息作为标签更新数据发送给与客户端具有相同属性但安装在不同终端设备上的其它客户端的步骤。
在本发明实施例中,采用只对部分指定标签进行数据更新的增量更新方式,通过接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新,达到了避免对全部标签进行全量数据更新的目的,从而实现了减少同步APP时所消耗的流量的技术效果,进而解决了相关技术中由于采用APP全量同步技术而造成的流量消耗大的技术问题。
本领域普通技术人员可以理解,图1所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图1其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图1所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例6
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例1和实施例2所提供的数据更新方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,指定标签为已经在其它客户端中更新过的标签,客户端与其他客户端为同种应用软件(如同种新闻类软件或同种阅读类软件),且两者安装在不同的终端设备上,应用软件具有可供用户调整的分类标签和/或标记标签;根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,客户端用于接收并根据接收到的标签更新数据,对客户端中的指定标签进行状态更新。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种数据更新方法,其特征在于,包括:
接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,所述指定标签为已经在其它客户端中更新过的标签,所述客户端与所述其他客户端为同种应用软件,且两者安装在不同的终端设备上,所述应用软件具有可供用户调整的分类标签和/或标记标签,所述标签更新数据包括所述指定标签的配置信息和所述指定标签的状态更新信息;
根据接收到的标签更新数据,对所述客户端中的所述指定标签进行状态更新。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在数据更新过程中,接收用户输入的用于对所述客户端中的选定标签进行状态更新的标签更新指令;
根据接收到的标签更新指令,对所述客户端中的所述选定标签进行状态更新;
将所述选定标签对应的配置信息以及根据所述标签更新指令对所述选定标签进行状态更新时生成的状态更新信息发送至所述服务器,
其中,所述服务器用于接收并将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端,以对所述其它客户端中的指定标签进行状态更新。
3.根据权利要求1所述的方法,其特征在于,根据接收到的标签更新数据,对所述客户端中的所述指定标签进行状态更新包括:
根据接收到的标签位置修改数据,对所述客户端中的所述指定标签进行标签位置修改,该步骤包括:
解析所述标签位置修改数据,得到对应的标签位置修改指令;
当所述标签位置修改指令指示将所述指定标签的位置调整至第一位置时,将原第一位置对应的数字减1作为所述指定标签的调整后的位置对应的数字;
当所述标签位置修改指令指示将所述指定标签的位置调整至倒数第一位置时,将原倒数第一位置对应的数字加1作为所述指定标签的调整后的位置对应的数字;
当所述标签位置修改指令指示将所述指定标签的位置调整至除所述第一位置和所述倒数第一位置之外的其它位置时,将与调整后的位置相邻的两个位置对应的数字相加并除以2作为所述指定标签的调整后的位置对应的数字;
根据调整后的位置对应的数字,对所述客户端中的所述指定标签进行标签位置修改。
4.根据权利要求3所述的方法,其特征在于,在根据调整后的位置对应的数字,对所述客户端中的所述指定标签进行标签位置修改之后,所述方法还包括:
判断将与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值是否超出预设数值范围;
在判断出与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值超出所述预设数值范围的情况下,重置所述客户端中所有标签的位置所对应的数字。
5.一种数据更新方法,其特征在于,包括:
将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,所述指定标签为已经在其它客户端中更新过的标签,所述客户端与所述其他客户端为同种应用软件,且两者安装在不同的终端设备上,所述应用软件具有可供用户调整的分类标签和/或标记标签,所述标签更新数据包括所述指定标签的配置信息和所述指定标签的状态更新信息;
其中,所述客户端用于接收并根据接收到的标签更新数据,对所述客户端中的所述指定标签进行状态更新。
6.根据权利要求5所述的方法,其特征在于,在数据更新过程中,所述客户端还用于接收并根据用户输入的用于对所述客户端中的选定标签进行状态更新的标签更新指令,对所述客户端中的所述选定标签进行状态更新,同时将所述选定标签对应的配置信息以及根据所述标签更新指令对所述选定标签进行状态更新时生成的状态更新信息发送至所述服务器,其中,所述方法还包括:
接收并将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端,以对所述其它客户端中的指定标签进行状态更新。
7.根据权利要求6所述的方法,其特征在于,在数据更新过程中,在将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端之前,所述方法还包括:
解析所述状态更新信息,得到对应的状态更新时间;
判断所述状态更新时间是否满足预设时间条件,
其中,在判断出所述状态更新时间满足所述预设时间条件的情况下,执行将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端的步骤。
8.一种客户端,用于进行数据更新,其特征在于,包括:
第一接收单元,用于接收服务器发送的用于对客户端中的指定标签进行状态更新的标签更新数据,其中,所述指定标签为已经在其它客户端中更新过的标签,所述客户端与所述其他客户端为同种应用软件,且两者安装在不同的终端设备上,所述应用软件具有可供用户调整的分类标签和/或标记标签,所述标签更新数据包括所述指定标签的配置信息和所述指定标签的状态更新信息;
第一更新单元,用于根据接收到的标签更新数据,对所述客户端中的所述指定标签进行状态更新。
9.根据权利要求8所述的客户端,其特征在于,所述客户端还包括:
第二接收单元,用于在数据更新过程中,接收用户输入的用于对所述客户端中的选定标签进行状态更新的标签更新指令;
第二更新单元,用于根据接收到的标签更新指令,对所述客户端中的所述选定标签进行状态更新;
发送单元,用于将所述选定标签对应的配置信息以及根据所述标签更新指令对所述选定标签进行状态更新时生成的状态更新信息发送至所述服务器,
其中,所述服务器用于接收并将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端,以对所述其它客户端中的指定标签进行状态更新。
10.根据权利要求8所述的客户端,其特征在于,所述第一更新单元,还用于根据接收到的标签位置修改数据,对所述客户端中的所述指定标签进行标签位置修改,其中,所述第一更新单元包括:
解析模块,用于解析所述标签位置修改数据,得到对应的标签位置修改指令;
第一确定模块,用于当所述标签位置修改指令指示将所述指定标签的位置调整至第一位置时,将原第一位置对应的数字减1作为所述指定标签的调整后的位置对应的数字;
第二确定模块,用于当所述标签位置修改指令指示将所述指定标签的位置调整至倒数第一位置时,将原倒数第一位置对应的数字加1作为所述指定标签的调整后的位置对应的数字;
第三确定模块,用于当所述标签位置修改指令指示将所述指定标签的位置调整至除所述第一位置和所述倒数第一位置之外的其它位置时,将与调整后的位置相邻的两个位置对应的数字相加并除以2作为所述指定标签的调整后的位置对应的数字;
修改模块,用于根据调整后的位置对应的数字,对所述客户端中的所述指定标签进行标签位置修改。
11.根据权利要求10所述的客户端,其特征在于,所述客户端还包括:
判断单元,用于在根据调整后的位置对应的数字,对所述客户端中的所述指定标签进行标签位置修改之后,判断将与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值是否超出预设数值范围;
重置单元,用于在判断出与调整后的位置相邻的两个位置对应的数字相加并除以2得到的数值超出所述预设数值范围的情况下,重置所述客户端中所有标签的位置所对应的数字。
12.一种服务器,用于进行数据更新,其特征在于,包括:
发送单元,用于将用于对客户端中的指定标签进行状态更新的标签更新数据发送至客户端,其中,所述指定标签为已经在其它客户端中更新过的标签,所述客户端与所述其他客户端为同种应用软件,且两者安装在不同的终端设备上,所述应用软件具有可供用户调整的分类标签和/或标记标签,所述标签更新数据包括所述指定标签的配置信息和所述指定标签的状态更新信息;
其中,所述客户端用于接收并根据接收到的标签更新数据,对所述客户端中的所述指定标签进行状态更新。
13.根据权利要求12所述的服务器,其特征在于,在数据更新过程中,所述客户端还用于接收并根据用户输入的用于对所述客户端中的选定标签进行状态更新的标签更新指令,对所述客户端中的所述选定标签进行状态更新,同时将所述选定标签对应的配置信息以及根据所述标签更新指令对所述选定标签进行状态更新时生成的状态更新信息发送至所述服务器,其中,所述服务器还包括:
接收单元,用于接收并将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端,以对所述其它客户端中的指定标签进行状态更新。
14.根据权利要求13所述的服务器,其特征在于,所述服务器还包括:
解析单元,用于在数据更新过程中,在将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端之前,解析所述状态更新信息,得到对应的状态更新时间;
判断单元,用于判断所述状态更新时间是否满足预设时间条件,
其中,所述接收单元,还用于在判断出所述状态更新时间满足所述预设时间条件的情况下,执行将所述配置信息和所述状态更新信息作为标签更新数据发送给与所述客户端具有相同属性但安装在不同终端设备上的其它客户端的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610298941.7A CN105991770B (zh) | 2016-05-05 | 2016-05-05 | 数据更新方法、客户端及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610298941.7A CN105991770B (zh) | 2016-05-05 | 2016-05-05 | 数据更新方法、客户端及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105991770A CN105991770A (zh) | 2016-10-05 |
CN105991770B true CN105991770B (zh) | 2018-01-30 |
Family
ID=57044580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610298941.7A Active CN105991770B (zh) | 2016-05-05 | 2016-05-05 | 数据更新方法、客户端及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105991770B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108614834B (zh) * | 2016-12-13 | 2022-05-24 | 阿里巴巴集团控股有限公司 | 一种页面生成方法及装置 |
CN109446443B (zh) * | 2018-10-18 | 2021-11-09 | 武汉斗鱼网络科技有限公司 | 一种标签更新方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238197A (zh) * | 2010-04-20 | 2011-11-09 | 上海博路信息技术有限公司 | 一种移动阅读的多屏同步方法 |
CN102664932A (zh) * | 2012-04-09 | 2012-09-12 | 青岛百灵信息科技有限公司 | 一种基于云计算的跨终端同步网络浏览器标签页的方法 |
CN103002010A (zh) * | 2012-10-29 | 2013-03-27 | 北京奇虎科技有限公司 | 一种基于增量数据的数据更新方法、装置和系统 |
CN104243429A (zh) * | 2013-06-20 | 2014-12-24 | 腾讯科技(深圳)有限公司 | 一种实现浏览器书签同步的方法、装置及系统 |
-
2016
- 2016-05-05 CN CN201610298941.7A patent/CN105991770B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238197A (zh) * | 2010-04-20 | 2011-11-09 | 上海博路信息技术有限公司 | 一种移动阅读的多屏同步方法 |
CN102664932A (zh) * | 2012-04-09 | 2012-09-12 | 青岛百灵信息科技有限公司 | 一种基于云计算的跨终端同步网络浏览器标签页的方法 |
CN103002010A (zh) * | 2012-10-29 | 2013-03-27 | 北京奇虎科技有限公司 | 一种基于增量数据的数据更新方法、装置和系统 |
CN104243429A (zh) * | 2013-06-20 | 2014-12-24 | 腾讯科技(深圳)有限公司 | 一种实现浏览器书签同步的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105991770A (zh) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107844933A (zh) | 订单处理方法及装置 | |
CN107391626B (zh) | 落地页的创建方法和装置 | |
CN111786885B (zh) | 分布式全链路灰度路由方法及装置 | |
CN108574706B (zh) | 媒体文件的推送方法及装置 | |
CN104753985A (zh) | 会话列表显示方法和装置 | |
CN105677845A (zh) | 电子书籍的推送方法和装置 | |
CN107464043A (zh) | 一种空间众包中多类型任务的分配方法 | |
WO2005010791A1 (en) | System and method for dynamic scheduling of personnel | |
CN104540176B (zh) | 一种无线网络接入方法、装置及终端 | |
CN108875055A (zh) | 一种答案提供方法及设备 | |
CN107302711A (zh) | 媒体资源的处理系统 | |
CN105224516A (zh) | 图文信息生成方法及装置 | |
CN107729143B (zh) | 应用控制方法、装置、存储介质及电子设备 | |
CN107689968A (zh) | 任务的处理系统、方法及装置 | |
CN110533106A (zh) | 图像分类处理方法、装置及存储介质 | |
CN105991770B (zh) | 数据更新方法、客户端及服务器 | |
CN107333095A (zh) | 媒体资源的处理系统 | |
CN108960110A (zh) | 用于生成信息的方法和装置 | |
CN104866185B (zh) | 控制界面显示方法和装置 | |
CN109508842A (zh) | 配送运力调控方法和装置 | |
CN109783757A (zh) | 渲染网页的方法及装置、系统、存储介质、电子装置 | |
CN107391168A (zh) | 动画加载方法和装置以及请求处理方法和装置 | |
CN108737486A (zh) | 信息推送方法和装置 | |
CN107733785A (zh) | 一种多终端聊天信息同步删除方法及装置 | |
CN106682014A (zh) | 游戏展示数据的生成方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200528 Address after: 310051 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Alibaba (China) Co.,Ltd. Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping radio square B tower 13 floor 03 unit self Patentee before: GUANGZHOU ALIBABA LITERATURE INFORMATION TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |