基于Sync协议设计与实现联系人同步系统

毕业设计(论文)译文题目基于SyncML协议设计与实现Android联系人同步系统学生姓名郑翠仙学号2010112257专业计算机科学与技术班级20101122指导教师杨旺明评阅教师杨旺明---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---完成日期2013年12月25日---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---基于Sync协议设计与实现Android联系人同步系统HaoYujie,YanChao摘要:Android正在变得越来越流行。直到2012年上半年,Android手机市场份额已经达到52.5%。仅仅拿智能手机来说,该比率甚至超过75%。联系人对用户是非常重要的。联系人同步系统允许用户联系人可以被存储在一个网络服务器上。用户可以通过多个客户端处理他们的数据。并且服务器能保证用户的数据的一致性和安全性。因此,基于SyncML协议我们为Android设计并实现一个联系人同步系统。现有Android联系人同步软件一般使用单独的同步协议。它们导出所有的联系人数据到一个文件中,并应用rsnyc算法来查找变化。与此相反,我们提供一种新的方式来找到变化并使用SyncML协议实现同步系统。关键字:SyncML协议;Android;联系人同步。I.引言SyncML是同步标记语言的缩写。它是一种基于XML独立平台的信息同步协议。它是由IBM,摩托罗拉,诺基亚,PalmInc和Psion等公司成立的SyncML数据同步论坛开发的。SyncML的目的是提供一个开放的标准以替换现有的数据同步解决方案,其中大多是有些厂商,应用程序或操作系统所特有的。SyncML协议的框架示于图1。SyncML协议包括SyncML数据同步协议,SyncML表示协议和SyncML传输绑定协议。SyncML被认为是在一些类型的手持式装置和一台计算机之间最常见的方法来同步联系人和日历信息,诸如移动电话和个人计算机。该规范的新版本包括支持推送电子邮件,提供一个标准的协议替代专有的解决方案,如黑莓手机。我们开发我们的应用程序基于一个名为libsyncml的开源库。SyncML表示协议和传输绑定协议已在动态链接库中被实现。所以,我们只专注于SyncML数据同步协议。---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---图1.SyncML框架SyncML同步协议在客户端与服务器同步时定义数据类型和消息。同步消息的主要部分如下所示。A.数据映射SyncML协议规定,客户端和服务器为每个数据项必须有一个标识符,这在客户端称作LUID和在服务器称作GUID。LUID可能与GUID不一样。LUID是由客户决定的。所以,服务器需要建立一个鉴定映射表来知道每个GUID和LUID的对应关系。B.变化日志当改变发生在数据项,服务器和客户端必须把它记录到变化日志文件中。设备根据改变的日志决定哪个数据项需要被同步。C.同步锚同步锚表示一个同步事件。它通常以一个字符串或一个时间戳的形式表示。有下一个和最后一个两种锚。最后锚代表上次同步的时间而下一个锚代表数据项改变的时间。当同步开始时,客户端和服务器发送其锚到对方。如果下一锚与最后一个锚相同,它们就启动正常的同步。否则,一个缓慢的同步被启动。图2.系统设计---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---D.同步类型在SyncML协议中有7种同步类型。仅仅两个同步类型被用在我们的应用程序中。它们是缓慢同步和正常同步。缓慢同步是指发送所有的数据项给客户端。正常同步只发送改变的数据项给客户端。E.冲突解决方案在服务器和客户端修改同一个数据项是不允许的。当它们这样同步做冲突就会发生。这个问题必须解决。在不同的应用程序中可以使用不同的规则。在我们的应用程序中,我们保留最新修改的数据项。II.系统设计图2示出了该系统的体系结构。前置服务器用来做身份验证和负载平衡。当启动同步,Android客户端发送它的用户名和密码给前置服务器。前置服务器通过查询数据库检查它的信息。如果用户名和密码正确,那么前置服务器根据负载平衡算法发送同步服务器的IP地址。客户端用IP地址指定的同步服务器同步。同步服务器负责与Android客户端同步联系人信息。一个线程池被设置在同步服务器中。当接收一个同步请求时,同步服务器从线程池中取一个线程来响应,当同步完...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

确认删除?