[发明专利]一种应用于智能手机终端的可增量同步方法无效
申请号: | 201010295695.2 | 申请日: | 2010-09-29 |
公开(公告)号: | CN101931633A | 公开(公告)日: | 2010-12-29 |
发明(设计)人: | 戴鸿君;刘宇;郭凤华;贾智平 | 申请(专利权)人: | 山东大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04W80/00;H04W88/02;G06F17/30 |
代理公司: | 济南圣达专利商标事务所有限公司 37221 | 代理人: | 张勇 |
地址: | 250100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 智能手机 终端 增量 同步 方法 | ||
技术领域
本发明涉及一种应用于智能手机终端的可增量同步方法,属于嵌入式系统技术领域。
背景技术
本发明通过对若干已有技术的融合并加入自己的创新,设计并实现了一种应用于智能手机终端的可增量同步方法,相关的技术有:
1、XML
XML(Extensible Markup Language)即可扩展标记语言,Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。在手机等移动设备上使用XML方式则具有协议标准、跨平台性、可扩展性强三个优点。
2、标记位
标记位是指在表中添加一个字段,整数类型,初始默认值为0。当记录被新增或修改的时候,这个标志位都置为1。标记位使用起来简单易行,对手机硬件资源的要求不高,对网络和文件系统的依赖程度低,可以在使用较少资源的前提条件下,克服无线网络的断线问题。
当今,上述各项技术已经发展成熟,并已经得到了一定的实际应用,但是没有一个方法能够将他们组合起来,面向智能手机终端推出实用的发明和创新方案。本发明将上述各项功能结合在一起,形成一种全新结合的、应用于智能手机终端的、可增量同步方法。
发明内容
针对现有技术的不足,本发明提供一种应用于智能手机终端的可增量同步方法。
为实现上述目的,本发明采用如下技术方案:
一种用于智能手机终端的可增量同步方法,该方法包括以下步骤:
Step1:服务器为每一个客户端维持一个任务列表,记录服务器要求客户端执行的任务;
Step2:客户端从服务器获取任务列表,如果任务列表为空,则进行Step3;若不为空,客户端将从服务器获得的任务列表存储到本地数据库表或者文件系统中的本地任务列表中,并增加标记位,初始值置为0;
Step3:客户端根据存储在本地的任务列表将标记位为0的任务装入队列,开启同步过程执行任务;直至任务队列为空则同步结束,否则继续执行任务;
Step4:客户端确认一个下载任务完成后,在本地数据库中将此任务的标记位置为1;若下载失败,则从队列头中清除此任务,插入到队列尾中,继续下载。
所述客户端为手机终端。
本发明采用XML设计网络通信协议,使用标记位记录同步任务执行是否成功。服务器和多个手机进行连接,通过基于XML设计的网络协议进行通信。服务器对每一个手机客户端在数据库中维持一个任务列表,根据客户端的请求,将响应信息发送给客户端。客户端先将信息保存为文件,解析后存入本地数据库中,并在本地数据库中维持一个任务列表,依据任务列表向服务器发送请求执行任务,接收信息后将信息存储在本地数据库中。
附图说明
图1是本发明的增量同步方法的主流程图。
具体实施方式
下面结合附图和实施例对本发明做进一步说明。
在协议设计过程中,考虑到增量同步的基本需求,所设计的XML协议的基本格式遵从如下规范:
客户端发送到服务器端:
注:客户端向服务器发送请求信息与自己的标示信息
服务器端将上述xml文件解析后,会根据客户端的请求信息查询数据库,然后将查询到的信息返回给客户端,会向客户端返回如下信息
注:信息码表明返回信息是否正确
服务器收到客户端的请求信息后进行解析,解析完成后服务器根据请求信息将信息发还给客户端。
其中,如图1所示,增量同步的方法如下:
(1)服务器为每一个客户端维持一个任务列表,记录服务器要求客户端执行的任务;
(2)客户端通过SOCKET从服务器获取任务列表,如果任务列表为空,则进行(3);若不为空,客户端将从服务器获得的任务列表存储到本地数据库表或者文件系统中的本地任务列表中,并增加标记位,初始值置为0;
(3)客户端根据存储在本地的任务列表将标记位为0的任务装入队列,开启同步过程执行任务;直至任务队列为空则同步结束,否则继续执行任务通过SOCKET下载数据;
(4)客户端确认一个下载任务完成后,在本地数据库中将此任务的标记位置为1;若因网络等原因下载失败,则从队列头中清除此任务,插入到队列尾中,继续下载。
实施例:
手机客户端要同步服务器上的客户详细信息,首先客户端先进行登陆验证身份,登陆成功后向服务器发出取得用户列表请求,登陆不成功则无法进行同步。服务器收到客户端请求后,使用SQL命令查询数据库取得用户列表,然后将用户列表返回给客户端。客户端获取任务列表后,如果任务列表为空,则执行同步任务,若不为空,客户端将从服务器获得的任务列表存储到本地数据库表或者文件系统中的本地任务列表中,并增加标记位,初始值置为0。然后客户端查询任务表,将任务表中标记位为0的任务生成任务队列(初始时是0,任务执行成功后改成1),从队列头中取得任务,发出查询此客户详细信息的请求。服务器收到请求后,查询数据库并将此用户详细信息返回给客户端,客户端收到后将信息存入数据库,将数据库任务表中此任务对应条目的标记位置为1,到此为止任务执行成功,然后查询队列是否为空,队列不为空则继续从队列头取得任务并执行,队列为空则同步结束;若任务执行不成功,则将此任务从任务队列尾部压入,然后从队列头取得任务并执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010295695.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多功能医用病床
- 下一篇:组合式烟火探测器和照明设备