CN102238223B - 一种面向移动设备的网络化个人数据管理方法 - Google Patents
一种面向移动设备的网络化个人数据管理方法 Download PDFInfo
- Publication number
- CN102238223B CN102238223B CN201010171573A CN201010171573A CN102238223B CN 102238223 B CN102238223 B CN 102238223B CN 201010171573 A CN201010171573 A CN 201010171573A CN 201010171573 A CN201010171573 A CN 201010171573A CN 102238223 B CN102238223 B CN 102238223B
- Authority
- CN
- China
- Prior art keywords
- personal data
- mobile device
- data
- device client
- server end
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种面向移动设备的网络化个人数据管理方法,该方法在网络服务器存储完整的个人数据,在移动设备缓存常用个人数据,包括:移动设备客户端向网络服务器端发出身份验证请求,服务器端将验证结果返回所述客户端,若请求失败,则方法终止;在所述客户端对个人数据进行数据操作,将数据操作后的个人数据在所述客户端与网络服务器端进行自动同步,若操作的数据在所述客户端没有缓存,则从网络服务器端进行下载所要操作的个人数据。本发明可按需从服务器端获取个人数据,更换移动设备不影响个人数据,可从服务器端自动获取,当客户端空间不够时,将其中的个人数据自动转存入服务器中,可以设置个人数据的私密性,并且具有数据反删除功能。
Description
技术领域
本发明涉及移动互联网数据管理技术领域,特别涉及一种面向移动设备的网络化个人数据管理方法。
背景技术
在经历了大型机、小型机、个人电脑和桌面互联网时代之后,全球正在步入移动互联网时代。2010年初,我国手机用户数已经突破7亿,2010年全球手机用户数预计将突破50亿。以手机、PDA、MID、电纸书等为代表的移动设备正在取代个人电脑,成为访问互联网的主要方式。3G技术的普及使得移动互联网的发展速度和用户规模都将远远超越桌面互联网,面向移动设备的移动互联网服务也面临着诸多新的挑战。
个人信息管理(Personal Information Management,PIM)是移动设备中最重要的应用,主要包括地址本(也称地址簿、联系人、通讯录等)、日程表、短信等。现在的PIM系统都是将所有用户数据存储在设备的本地存储器中,如果存储器件出现故障或设备丢失,则数据一并丢失;如果更换设备,则往往需要通过专用PC机程序完成数据迁移。由于个人信息的特殊性,一旦丢失会给用户带来巨大损失,而手工迁移对普通用户来说要求太高,非常不便。随着移动互联网的日渐流行,保证个人数据的可靠性和可用性显得越来越重要。
为了解决由设备丢失和更换带来的个人数据的管理问题,同步和备份是目前两种最常用的技术手段。
1、同步是指设备中的个人信息数据自动(或手动)地和网络服务器的数据进行同步,任何一方进行数据操作,另一方都会同步更改后的数据,保证二者的一致性。SyncML和ActiveSync是两种被广泛采用的协议。SyncML支持多移动设备客户端同步,设计了多种同步策略,同步协议非常复杂,在同步过程中容易产生数据冲突。GoogleSync、腾讯同步助手、火种通讯录、139地址本以及Funambol都采用SyncML技术,大多数手机中也内置了SyncML支持。ActiveSync是微软为Windows Mobile手机平台开发的同步协议,除了地址本、日程表等个人信息,同时支持文档、图片,甚至应用程序的同步。一旦设备丢失或更换,则可以通过同步从服务器上下载原始数据,保证了数据的可用性。
2、备份是指用户通过专用程序将个人信息显式地备份至其它存储设备或者网络服务器。大多数手机中都有将地址本备份至SD卡的应用程序,其功能就是将地址本完整地拷贝至SD卡中。中国移动推出的“i联系”也是一款采用备份方法的应用,用户可以将地址本上传至网络服务器,一旦手机丢失或者更换,则可以从服务器上下载以前上传的地址本,实现数据的恢复或迁移。
移动互联网时代的到来给PIM提出了许多新的需求,比如地址本和短信永久保存,搜索逐渐取代顺次浏览成为主要的数据定位方法。尽管已经有很多基于同步和备份方法的PIM系统,但这两种方法本身存在的一些问题导致这些系统无法满足PIM的新需求,这些问题主要表现在:
1、终端设备和服务器都存储所有的数据。上述两种方法要求终端设备的数据和服务器的数据完全相同,即用户数据在终端设备和服务器上各有一份拷贝。如果要永久存储用户数据,那么随着时间的增加,用户数据也在不断增加,移动设备上有限的存储空间将无法支持所有数据的本地存储。移动设备有限额存储能力与二者的假设不相符。
2、操作在所有数据上进行。即使移动设备的存储空间能够容纳所有数据,很多全局操作,如索引、搜索等,都会消耗大量的电能,而且随着数据规模的增加,操作的性能也会受到严重影响。实际上,个人信息数据有很强的局部性,常用联系人只占整个地址本很小的比例,经常查阅的短信息数量也远小于短信总量,现有方法未考虑数据局部性,这与移动设备有限的续航能力不相符。
3、不支持反删除。一旦某条记录被删除,同步协议会保证另一端的相应数据也被删除,无法恢复;备份方法一般只能恢复最近一次被删除的信息,上次备份以前删除的信息则无法恢复。一方面用户经常有恢复被删除的数据的需求(如Windows操作系统中提供的回收站功能);另一方面移动设备体积较小,屏幕呈现能力有限,数据被误删除的情况时有发生,因此提供反删除功能对PIM来说是非常必要的。
此外,同步协议语义复杂,实现困难,实际应用中常出现同步失败的情形;而备份的方法不考虑数据语义,直接传输整个文件,浪费网络带宽,效率很低,且当数据量越来越大的时候,不具有可行性。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是如何实现在移动设备客户端按需获取个人数据、实现局部数据操作、实现反删除功能以及实现语义简单自动同步方法。
(二)技术方案
一种面向移动设备的网络化个人数据管理方法,按照如下方式存储个人数据:在网络服务器上存储完整的个人数据,在移动设备缓存部分个人数据,该方式具体包括以下步骤:
S1:移动设备客户端向网络服务器端发出身份验证请求,网络服务器端将验证结果返回移动设备客户端,若请求成功,则执行步骤S2,否则方法终止;
S2:在移动设备客户端对个人数据进行数据操作,将数据操作后的个人数据在移动设备客户端与网络服务器端进行自动同步,所述数据操作包括数据的浏览、搜索、添加、修改、删除、恢复、彻底删除和私密设置。
其中,所述步骤S1和S2之间还包括步骤:
若移动设备客户端没有缓存所要操作的个人数据,则从网络服务器端下载,若移动设备客户端是首次使用网络服务器端的个人数据时,则从网络服务器端进行首次下载所需的个人数据。
其中,所述步骤S2还包括:
若进行数据操作时移动设备客户端缓存不够,则将缓存在移动设备客户端中的部分个人数据中的一部分数据自动转存到网络服务器端存储。
其中,所述步骤S2中转存到网络服务器端的部分个人数据中的一部分数据为移动设备客户端中访问时间最早的部分个人数据,以使移动设备客户端能够容纳要操作的个人数据。
其中,所述步骤S2中在执行浏览或搜索操作时,同时在移动设备客户端和网络服务器端查询,并将网络服务器端返回的查询结果和移动设备客户端的查询结果合并,然后显示。
其中,所述步骤S2中,在进行数据操作后,进行自动同步前包括步骤:
移动设备客户端向网络服务器端发送数据同步请求;
网络服务器端接收所述数据同步请求,并分离所述数据同步请求中的数据操作和个人数据;
根据所述数据操作对个人数据进行同步处理,并将处理结果返回给移动设备客户端。
其中,所述网络服务器端中的个人数据具有全局唯一标识guid,并具有如下之一的状态:
CACHED:表示个人数据在移动设备客户端有缓存,
ARCHIVED:表示个人数据在移动设备客户端没有缓存,
DELETED:表示个人数据已被用户删除,只存储在服务器端,移动设备客户端中没有该个人数据;
所述移动设备客户端中的个人数据具有所述全局唯一标识guid和本地唯一标识,并且具有如下标志:
sync_state:表示所述移动设备客户端中的个人数据的同步状态,
sync_dirty:表示所述移动设备客户端中的个人数据有无改动,取值“0”表示无改动,“1”表示有改动,
sync_enable:表示所述移动设备客户端中的个人数据是否需要同步,取值“0”表示不需要同步,“1”表示需要同步;
标志sync_state包括以下状态:
present:表示个人数据在移动设备客户端缓存的正常状态,在移动设备客户端显示,
deleted:表示个人数据已在移动设备客户端删除,等待将其在服务器上删除,不在移动设备客户端显示,
removed:表示个人数据已在移动设备客户端彻底删除,等待将其在服务器上彻底删除,不在移动设备客户端显示,
archived:表示个人数据即将从移动设备客户端转存至网络服务器端,等待将其在服务器上标记为ARCHIVED,不在移动设备客户端显示,
recovered:表示个人数据刚从服务器恢复到移动设备客户端,等待将其在服务器上设置为CACHED,在移动设备客户端显示,
notsynced:表示个人数据不参与同步,在移动设备客户端显示。
其中,所述步骤S2中对个人数据进行数据操作和同步处理的步骤具体包括:
所述数据操作为添加时,将要添加的个人数据存入移动设备客户端,此时该个人数据的标识guid为空或异常值,标志sync_state为present状态,同步开始时,将所有标识guid为空或异常值的个人数据上传到网络服务器端,若网络服务器端返回的结果正确,将标识guid设置为服务器端返回的guid值,否则认为本次同步失败,等待下一次同步;
所述数据操作为修改时,在移动设备客户端修改个人数据,此时若该个人数据的标识guid为空或异常值,则不做处理,若标识guid为正常值,则将标志sync_dirty位置为1,同步开始时,将标识guid为正常值且标志sync_dirty为1的个人数据通过更新报文上传到网络服务器端,如果网络服务器端返回的结果正确,将标志sync_dirty标志置为0,否则认为本次同步失败,等待下一次同步;
所述数据操作为删除时,在移动设备客户端将要删除的个人数据的标志sync_state改为deleted,同步开始时,发送标识guid为正常、标志sync_dirty为0,且标志sync_state为deleted的个人数据对应的删除报文到网络服务器,如果网络服务器端返回结果正确,则将该个人数据从移动设备客户端中删除,否则等待下一次同步;
所述数据操作为恢复时,移动设备客户端向网络服务器端发起查询报文,向网络服务器端查询已删除的个人数据;如果服务器端返回的记录不为空,则用户选择需要恢复的个人数据,此时将选择的个人数据缓存到移动设备客户端,设置标志sync_state为recovered;同步开始时,发送所有标志sync_state为recovered的个人数据对应的恢复报文到网络服务器端,如果返回的结果正确,则将个人数据的标志sync_state改为present;否则等待下一次同步;
所述数据操作为彻底删除时,在移动设备客户端中将要彻底删除个人数据的标志sync_state改为removed,同步开始时,发送标识guid正常、标志sync_dirty为0,且标志sync_state为removed的个人数据对应的彻底删除报文到网络服务器端,如果返回结果正确,则将该个人数据从移动设备客户端和网络服务器端中删除,否则等待下一次同步处理;
所述数据操作为私密设置时,在移动设备客户端中将个人数据的标志sync_enable置为0,同步开始时,将所有标志sync_enable为0且标志sync_state不为notsynced状态的数据对应的彻底删除报文发送到网络服务器端,如果返回结果成功则将标志sync_state改为notsynced,并且将标识guid设置为非法值;当取消私密数据时,置标志sync_enable为1;同步开始时,将所有标志sync_enable为1而标志sync_state为notsynced状态的数据添加到网络服务器端,如果网络服务器端返回的结果正确,则从网络服务器端得到新的标识guid,更新移动设备客户端个人数据的标识guid为新的标识guid,并将标志sync_state置为present。
其中,所述将缓存在移动设备客户端中的部分个人数据中的一部分数据自动转存到网络服务器端存储时,将待转存的个人数据的标志sync_state设置为archived,并发送所有标志sync_state位为archived的个人数据对应的存档报文到网络服务器端,如果返回值正确,则在移动设备客户端中删除所述待转存的个人数据。
其中,所述移动设备包括:智能手机、PDA、MID或电纸书。
其中,所述个人数据包括:地址本、日程表或短信。
其中,在对个人数据进行同步时采用vCard传输交换格式,并将所述vCard格式对短信进行扩展,扩展的域及语义如下:
域FROM:语义:发件人号码;
域TO:语义:收件人号码;
域DATE:语义:时间戳;
域TYPE:语义:短信类型,SEND:发出的消息,RECV:接收到的消息;
域MMS:语义:是否为彩信,0:普通短信,1:彩信;
域READ:语义:阅读状态,1:已读;0:未读;
域BODY:语义:短信或彩信内容。
(三)有益效果
本发明的面向移动设备的网络化个人数据管理方法具有如下有益效果:
自动化:将所有本地数据自动存储于网络服务器,这使得设备丢失之后数据依然可用;
透明性:由于客户端自动完成同步操作,数据和设备无绑定关系,用户不需要关心数据的存储,在更换设备之后仍然可以无缝的访问个人信息,对用户完全透明;
按需获取:由于本地存储空间有限,PINM(Personal InformationNetwork Management,网络化个人数据管理)只在本地缓存经常使用的数据,网络服务器拥有完整的用户数据。如果用户需要使用本地未缓存的数据(如浏览更多的联系人),则根据设定的替换策略不断从服务器上获取新的数据,实现按需获取,完成在有限的资源上操作大量数据;
反删除:提供回收站功能,这使得用户可以恢复曾删除的数据,弥补用户误操作造成的损失;
私密性:用户可以指定特定数据不进行网络存储,这些数据一般具有很重要的私密性,产生之后由用户自行处理,服务器不保留备份,删除后也无法恢复。
附图说明
图1是根据本发明的面向移动设备的网络化个人数据管理方法的移动设备客户端和网络服务器端的交互模式示意图;
图2是根据本发明的面向移动设备的网络化个人数据管理方法流程图;
图3是根据本发明的面向移动设备的网络化个人数据管理方法中网络服务器端数据状态转移图。
具体实施方式
本发明提出的面向移动设备的网络化个人数据管理方法,结合附图和实施例说明如下。
本发明的方法中按照如下方式存储个人数据,在网络服务器存储完整的个人数据,在移动设备缓存部分个人数据,其中部分个人数据一般为用户常用的个人数据。本发明实施例中包括移动设备的客户端和网络服务器端,如图1所示。移动设备的客户端包括以下模块:
界面模块(以下简称UI),是直接和用户发生交互的可视模块。用户通过触摸屏幕、点击键盘等动作操作UI上的各种控件。UI通过改变其中控件的大小、位置、属性等将操作的结果呈现给用户。
本地存储模块(以下简称DB),负责用户个人数据的存储和管理数据,基于SQLite数据库实现,即用户的个人数据——联系人、短信等都存储在各自的SQLite数据库中。
数据查询模块(以下简称DQ),是连接UI和DB的桥梁。UI通过查询DB得到查询结果的DQ,DQ的作用是缓存查询结果,并且将DB里面每条记录的各个字段翻译成界面可以直接使用的数据结构。原有的DQ只和DB的某个查询的结果对应,提供和缓存结果集。而现有的DQ在完成原有DQ的任务基础上,还需要按需求向网络服务器取得需要的数据,并管理数据的缓存等。
数据同步模块(以下简称DS),是负责将远端网络服务器和本地的数据进行同步的模块,负责同步本地数据和服务器端数据,并且自动将本地数据和服务器端数据进行替换,只保留常用数据。
网络服务器端包括:
身份验证模块:验证用户身份,拒绝非法用户请求;
网络通信模块:接收用户请求,并将请求数据传递至数据操作模块;数据操作模块完成用户请求的操作之后,将结果传递至网络通信模块,再由网络通信模块返回给客户端;
数据操作模块:接收到网络通信模块的用户请求数据,首先进行预处理,分离数据操作和用户数据,再根据数据操作完成对应的工作,最后根据处理结果组织必要数据,并返回给网络通信模块。
如图2所示,为本发明方法的流程图,首先,移动设备客户端向网络服务器端发出身份验证请求,网络服务器端中的身份验证模块对客户端身份进行验证,并将验证结果返回移动设备客户端,若请求成功,则继续执行,否则方法结束;
若移动设备客户端是首次使用网络服务器端的个人数据时,则需从网络服务器端进行首次下载所需的个人数据,否则可直接操个人数据,若操作的个人数据在移动设备客户端中没有缓存,则从网络服务器端下载要操作的个人数据,当移动设备客户端中空间不够时,将移动设备客户端中访问时间最早的一部分个人数据自动转存到网络服务端,以使移动设备客户端能够容纳要操作的个人数据。在进行数据操作时,若移动设备客户端中空间不够,则执行上述同样的自动转存操作。其中数据操作包括:数据的浏览、搜索、添加、修改、删除、恢复、彻底删除和私密设置。执行浏览或搜索操作时,可同时在移动设备客户端和网络服务器端查询,并将网络服务器端返回的查询结果和移动设备客户端的查询结果合并,然后显示。执行添加、修改、删除、恢复、彻底删除和私密设置操作后,需要对操作的个人数据在移动设备客户端和网络服务器端进行同步,在开始同步前,移动设备客户端向网络服务器端发送数据同步请求;网络服务器端接收数据同步请求,并分离所述数据同步请求中的数据操作和个人数据;根据所述数据操作对个人数据进行同步处理,并将处理结果返回给移动设备客户端。
其中,所述网络服务器端中的个人数据具有全局唯一标识guid,并具有如下之一的状态:
CACHED:表示个人数据在移动设备客户端有缓存,
ARCHIVED:表示个人数据在移动设备客户端没有缓存,
DELETED:表示个人数据已被用户删除,只存储在服务器端,移动设备客户端中没有该个人数据;
服务器端对应的数据操作有:添加(新增一条数据)、修改(修改已有数据)、删除(标记数据为删除状态,可恢复)、彻底删除(完全删除数据,不可恢复)、恢复(恢复被删除数据),转存(将本地部分数据写回服务器)、替换(属于转存的一种,将本地部分数据写回服务器,将服务器新的数据写入本地)、搜索(在记录数据中搜索),首次同步(首次使用设备从服务器下载部分数据)。个人数据状态在数据操作下的变换关系如图3所示。新添加数据为CACHED状态,DELETED数据不接受删除操作。CACHED和ARCHIVED数据不接受恢复操作。DELETED数据只存在于服务器端,不能被在客户端和服务器端替换。搜索操作不改变数据状态。彻底删除操作后数据消失,首次同步由搜索和替换实现,故二者在图3中不再显示。
所述移动设备客户端中的个人数据都以记录的形式存储在SQLite数据库中,即一个联系人,一条短信在数据库中一条独立的记录,每条记录都有唯一的标号(guid),即全局编号。客户端为缓存的每一条数据分配一个本地编号,并维护本地编号和全局编号之间的映射关系。向服务器发出请求时,如删除,修改,需要提供全局编号,本地编号仅用于客户端。UI在现有的UI基础上新增了如下功能:删除的菜单或选项分为一般删除和彻底删除两种,并且增加了首次同步、恢复功能,在程序的设置中有打开、关闭同步功能的选项。在DB中为每条个人数据增加如下标志字段:
sync_state:表示所述移动设备客户端中的个人数据的同步状态,
sync_dirty:表示所述移动设备客户端中的个人数据有无改动,取值“0”表示无改动,“1”表示有改动,
sync_enable:表示所述移动设备客户端中的个人数据是否需要同步,取值“0”表示不需要同步,“1”表示需要同步;
稳定状态下的客户端(不存在未同步数据)只有对应网络服务器端状态为CACHED的个人数据,但在用户执行数据操作和完成同步之前,个人数据包括中间状态,即所述sync_state包括以下状态:
present:表示个人数据在移动设备客户端中DB模块缓存的正常状态,在UI显示,
deleted:表示个人数据已在移动设备客户端中DB模块删除,等待将其在服务器上删除,不在UI显示,
removed:表示个人数据已在移动设备客户端中DB模块彻底删除,等待将其在服务器上彻底删除,不在UI显示,
archived:表示个人数据即将从移动设备客户端中DB模块转存至网络服务器端,等待将其在服务器上标记为ARCHIVED,不在UI显示,
recovered:表示个人数据刚从服务器恢复到移动设备客户端中DB模块,等待将其在服务器上设置为CACHED,在UI显示,
notsynced:表示个人数据不参与同步,在UI显示。
用户执行浏览操作(用户在移动终端上查看数据记录的操作)时,在UI的浏览界面通过查询本地DB返回的DQ显示本地记录;同时UI上还有“浏览更多”的按钮,当用户点击“浏览更多”按钮时,DQ向网络服务器发送搜索报文,从网络服务器查询回来的结果转换成数据在内存中的DQ,利用MergeCursor方法将DB查询的结果和网络服务器返回的结果将合并为一个DQ,UI根据这个DQ显示搜索结果。
用户执行浏览操作(在移动终端上按照一定的条件,查找符合条件的数据)时,和上述浏览过程类似,不同的只是在UI的搜索界面输入查询条件。
在执行以下添加、修改、删除、恢复、彻底删除和私密设置操作后,需要执行同步操作。
用户执行添加操作时,通过UI将要添加的个人数据存入DB,此时DB中对应记录的guid为空或异常值,sync_state为present状态。当DS开始同步的时候,将所有guid为空或异常值的记录上传到网络服务器,如果网络服务器返回的结果正确,将guid设置为服务器返回的guid值,否则认为本次同步失败,等待下一次同步。
用户执行修改操作时,通过UI在DB中修改个人数据,此时若对应记录的guid为空或异常值,则不做处理,若guid为正常值,则将sync_dirty位置为1,sync_state状态不变,当DS开始同步时,将guid为正常值且sync_dirty为1的记录通过更新报文上传到网络服务器端,如果网络服务器端返回的结果正确,将sync_dirty标志置为0,否则认为本次同步失败,等待下一次同步。
用户执行删除操作时,通过UI在DB中将要删除的个人数据的sync_state改为deleted,并不删除对应的记录,标记为deleted的记录将不再在UI中显示,当DS开始同步时,发送guid为正常、sync_dirty为0,sync_state为deleted的记录的删除报文到网络服务器,如果网络服务器端返回结果正确,则将该个人数据记录从DB中删除,否则留待下一次同步。
用户执行恢复操作时,通过UI向网络服务器端发起查询报文,向网络服务器端查询已删除的个人数据;如果服务器端返回的记录不为空,则用户选择需要恢复的记录,此时将选择的记录缓存到DB中,并设置sync_state为recovered;当DS开始同步时,将所有的sync_state为recovered的记录发送恢复报文给网络服务器端,如果返回的结果正确,则将记录的sync_state改为present;否则等待下一次同步。
用户执行彻底删除操作时,通过UI在DB中将要彻底删除个人数据记录的sync_state改为removed,标记为removed的记录将不再在UI中显示,当DS开始同步时,发送guid正常、sync_dirty为0,sync_state为removed的记录的彻底删除报文到网络服务器端,如果返回结果正确,则将该记录从DB和网络服务器端中删除,否则等待下一次同步处理。
用户执行私密设置操作时,通过UI在DB中将个人数据记录的sync_enable置为0,当DS开始同步时,将所有sync_enable为0且sync_state不为notsynced状态的记录对应的彻底删除报文发送到网络服务器端,如果返回结果成功则将sync_state改为notsynced,并且将guid设置为非法值;当取消私密数据时,置sync_enable为1;当DS开始同步时,将所有sync_enable为1而sync_state为notsynced状态的记录添加到网络服务器端,如果网络服务器端返回的结果正确,则从网络服务器端得到新的guid,更新DB中相应记录的guid为新的guid,并将sync_state置为present。
在上述数据操作的过程中,若DB空间不够时,则将缓存在移动设备客户端中的部分常用个人数据中的一部分数据自动转存到网络服务器端存储,将待转存的个人数据记录的sync_state设置为archived,并发送所有sync_state位为archived的记录的存档报文到网络服务器端,如果返回值正确,则在DB中删除所述待转存的个人数据。
上述的移动设备包括:智能手机、PDA、MID或电纸书。个人数据包括:地址本、日程表或短信。
上述移动设备客户端和网络服务器端之间完成数据传输需要考虑不同个人信息的组织格式和对不同网络的兼容性。重要的个人数据包括地址本,日程表和短信,vCard是标准的地址本传输交换格式,iCalendar是日程表的标准传输交换格式,短信则没有标准的格式。vCard和iCalendar在格式上非常相近,对二进制数据的序列化方法也相同,为了简化数据处理,本发明的PINM利用vCard格式来存储短信(包括彩信),扩展的域及其语义见表1所示:
表1 vCard格式对短信的扩展域及语义
域名 | 语义说明 |
FROM | 发件人号码 |
TO | 收件人号码 |
DATE | 时间戳 |
TYPE | 短信类型,SEND:发出的消息;RECV:接收到的消息 |
MMS | 是否为彩信,0:普通短信;1:彩信 |
READ | 阅读状态,1:已读;0:未读 |
BODY | 短信或彩信内容 |
移动设备客户端和服务器端之间的数据交互需要同时指定数据操作指令,本发明所述PINM采用XML来封装命令和数据。以下表2为保存一条发送短信的用户请求的XML封装:
表2发送短信的用户请求的XML封装
其中USERID指定用户身份,CMD指定本次请求需要完成的数据操作,DATA部分为完整的vCard格式数据。XML封装后的通过HTTP协议发送至服务器。服务器端完成添加操作之后,返回给移动设备客户端的数据如下表3所示:
表3网络服务器端的返回数据
ACK返回服务器端的错误消息,OK表示操作执行成功;GUID为服务器为新的数据项分配的全局编号。XML的封装方法可以处理不同的个人信息,HTTP请求可以用于不同的网络连接。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (11)
1.一种面向移动设备的网络化个人数据管理方法,其特征在于,按照如下方式存储个人数据:在网络服务器上存储完整的个人数据,在移动设备缓存部分个人数据,该方式具体包括以下步骤:
S1:移动设备客户端向网络服务器端发出身份验证请求,网络服务器端将验证结果返回移动设备客户端,若请求成功,则执行步骤S2,否则方法终止;
S2:在移动设备客户端对个人数据进行数据操作,将数据操作后的个人数据在移动设备客户端与网络服务器端进行自动同步,所述数据操作包括数据的浏览、搜索、添加、修改、删除、恢复、彻底删除和私密设置;
其中,所述网络服务器端中的个人数据具有全局唯一标识guid,并具有如下之一的状态:
CACHED:表示个人数据在移动设备客户端有缓存,
ARCHIVED:表示个人数据在移动设备客户端没有缓存,
DELETED:表示个人数据已被用户删除,只存储在服务器端,移动设备客户端中没有该个人数据;
所述移动设备客户端中的个人数据具有所述全局唯一标识guid和本地唯一标识,并且具有如下标志:
sync_state:表示所述移动设备客户端中的个人数据的同步状态,
sync_dirty:表示所述移动设备客户端中的个人数据有无改动,取值“0”表示无改动,“1”表示有改动,
sync_enable:表示所述移动设备客户端中的个人数据是否需要同步,取值“0”表示不需要同步,“1”表示需要同步;
标志sync_state包括以下状态:
present:表示个人数据在移动设备客户端缓存的正常状态,在移动设备客户端显示,
deleted:表示个人数据已在移动设备客户端删除,等待将其在服务器上删除,不在移动设备客户端显示,
removed:表示个人数据已在移动设备客户端彻底删除,等待将其在服务器上彻底删除,不在移动设备客户端显示,
archived:表示个人数据即将从移动设备客户端转存至网络服务器端,等待将其在服务器上标记为ARCHIVED,不在移动设备客户端显示,
recovered:表示个人数据刚从服务器恢复到移动设备客户端,等待将其在服务器上设置为CACHED,在移动设备客户端显示,
notsynced:表示个人数据不参与同步,在移动设备客户端显示。
2.如权利要求1所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S1和S2之间还包括步骤:
若移动设备客户端没有缓存所要操作的个人数据,则从网络服务器端下载,若移动设备客户端是首次使用网络服务器端的个人数据时,则从网络服务器端进行首次下载所需的个人数据。
3.如权利要求1或2所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S2还包括:
若进行数据操作时移动设备客户端缓存不够,则将缓存在移动设备客户端中的部分个人数据中的一部分数据自动转存到网络服务器端存储。
4.如权利要求3所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S2中转存到网络服务器端的部分个人数据中的一部分数据为移动设备客户端中访问时间最早的部分个人数据,以使移动设备客户端能够容纳要操作的个人数据。
5.如权利要求3所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S2中在执行浏览或搜索操作时,同时在移动设备客户端和网络服务器端查询,并将网络服务器端返回的查询结果和移动设备客户端的查询结果合并,然后显示。
6.如权利要求3所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S2中,在进行数据操作后,进行自动同步前包括步骤:
移动设备客户端向网络服务器端发送数据同步请求;
网络服务器端接收所述数据同步请求,并分离所述数据同步请求中的数据操作和个人数据;
根据所述数据操作对个人数据进行同步处理,并将处理结果返回给移动设备客户端。
7.如权利要求6所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述步骤S2中对个人数据进行数据操作和同步处理的步骤具体包括:
所述数据操作为添加时,将要添加的个人数据存入移动设备客户端,此时该个人数据的标识guid为空或异常值,标志sync_state为present状态,同步开始时,将所有标识guid为空或异常值的个人数据上传到网络服务器端,若网络服务器端返回的结果正确,将标识guid设置为服务器端返回的guid值,否则认为本次同步失败,等待下一次同步;
所述数据操作为修改时,在移动设备客户端修改个人数据,此时若该个人数据的标识guid为空或异常值,则不做处理,若标识guid为正常值,则将标志sync_dirty位置为1,同步开始时,将标识guid为正常值且标志sync_dirty为1的个人数据通过更新报文上传到网络服务器端,如果网络服务器端返回的结果正确,将标志sync_dirty标志置为0,否则认为本次同步失败,等待下一次同步;
所述数据操作为删除时,在移动设备客户端将要删除的个人数据的标志sync_state改为deleted,同步开始时,发送标识guid为正常、标志sync_dirty为0,且标志sync_state为deleted的个人数据对应的删除报文到网络服务器,如果网络服务器端返回结果正确,则将该个人数据从移动设备客户端中删除,否则等待下一次同步;
所述数据操作为恢复时,移动设备客户端向网络服务器端发起查询报文,向网络服务器端查询已删除的个人数据;如果服务器端返回的记录不为空,则用户选择需要恢复的个人数据,此时将选择的个人数据缓存到移动设备客户端,设置标志sync_state为recovered;同步开始时,发送所有标志sync_state为recovered的个人数据对应的恢复报文到网络服务器端,如果返回的结果正确,则将个人数据的标志sync_state改为present;否则等待下一次同步;
所述数据操作为彻底删除时,在移动设备客户端中将要彻底删除个人数据的标志sync_state改为removed,同步开始时,发送标识guid正常、标志sync_dirty为0,且标志sync_state为removed的个人数据对应的彻底删除报文到网络服务器端,如果返回结果正确,则将该个人数据从移动设备客户端和网络服务器端中删除,否则等待下一次同步处理;
所述数据操作为私密设置时,在移动设备客户端中将个人数据的标志sync_enable置为0,同步开始时,将所有标志sync_enable为0且标志sync_state不为notsynced状态的数据对应的彻底删除报文发送到网络服务器端,如果返回结果成功则将标志sync_state改为notsynced,并且将标识guid设置为非法值;当取消私密数据时,置标志sync_enable为1;同步开始时,将所有标志sync_enable为1而标志sync_state为notsynced状态的数据添加到网络服务器端,如果网络服务器端返回的结果正确,则从网络服务器端得到新的标识guid,更新移动设备客户端个人数据的标识guid为新的标识guid,并将标志sync_state置为present。
8.如权利要求7所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述将缓存在移动设备客户端中的部分个人数据中的一部分数据自动转存到网络服务器端存储时,将待转存的个人数据的标志sync_state设置为archived,并发送所有标志sync_state位为archived的个人数据对应的存档报文到网络服务器端,如果返回值正确,则在移动设备客户端中删除所述待转存的个人数据。
9.如权利要求8所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述移动设备包括:智能手机、PDA、MID或电纸书。
10.如权利要求9所述的面向移动设备的网络化个人数据管理方法,其特征在于,所述个人数据包括:地址本、日程表或短信。
11.如权利要求10所述的面向移动设备的网络化个人数据管理方法,其特征在于,在对个人数据进行同步时采用vCard传输交换格式,并将所述vCard格式对短信进行扩展,扩展的域及语义如下:
域FROM:语义:发件人号码;
域TO:语义:收件人号码;
域DATE:语义:时间戳;
域TYPE:语义:短信类型,SEND:发出的消息,RECV:接收到的消息;
域MMS:语义:是否为彩信,0:普通短信,1:彩信;
域READ:语义:阅读状态,1:已读;0:未读;
域BODY:语义:短信或彩信内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010171573A CN102238223B (zh) | 2010-05-06 | 2010-05-06 | 一种面向移动设备的网络化个人数据管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010171573A CN102238223B (zh) | 2010-05-06 | 2010-05-06 | 一种面向移动设备的网络化个人数据管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102238223A CN102238223A (zh) | 2011-11-09 |
CN102238223B true CN102238223B (zh) | 2012-10-10 |
Family
ID=44888424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010171573A Expired - Fee Related CN102238223B (zh) | 2010-05-06 | 2010-05-06 | 一种面向移动设备的网络化个人数据管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102238223B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103838767B (zh) * | 2012-11-26 | 2018-05-01 | 腾讯科技(深圳)有限公司 | 搜索记录的同步装置及方法 |
CN104169914A (zh) * | 2013-12-11 | 2014-11-26 | 华为技术有限公司 | 数据存储方法、数据处理方法、装置及移动终端 |
CN103634326B (zh) * | 2013-12-13 | 2017-05-31 | 中国农业银行股份有限公司 | 一种处理应用系统请求报文的方法及装置 |
CN105791372A (zh) * | 2014-12-26 | 2016-07-20 | 航天信息股份有限公司 | 在网络服务器端控制移动设备终端的系统以及方法 |
CN104881813A (zh) * | 2015-04-30 | 2015-09-02 | 努比亚技术有限公司 | 信息处理的方法、终端、服务器及系统 |
CN106411975B (zh) * | 2015-07-30 | 2021-07-09 | 腾讯科技(深圳)有限公司 | 一种数据输出方法、装置及计算机可读取存储介质 |
CN105577804B (zh) * | 2015-12-25 | 2019-07-09 | 合肥美的智能科技有限公司 | 大数据的处理方法及处理装置 |
CN109284203A (zh) * | 2018-08-30 | 2019-01-29 | 北京珠穆朗玛移动通信有限公司 | 安全数据备份方法和安全数据备份系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1852309A (zh) * | 2005-11-16 | 2006-10-25 | 华为技术有限公司 | 数据同步处理方法及其客户端 |
CN101500208A (zh) * | 2008-01-31 | 2009-08-05 | 三星电子株式会社 | 设备间数据同步的方法和系统 |
CN101552773A (zh) * | 2008-04-03 | 2009-10-07 | 华为技术有限公司 | 一种数据同步中处理数据项标识符映射的方法、设备和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7685175B2 (en) * | 2005-08-12 | 2010-03-23 | Michael Lee Carroll | Content manager |
-
2010
- 2010-05-06 CN CN201010171573A patent/CN102238223B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1852309A (zh) * | 2005-11-16 | 2006-10-25 | 华为技术有限公司 | 数据同步处理方法及其客户端 |
CN101500208A (zh) * | 2008-01-31 | 2009-08-05 | 三星电子株式会社 | 设备间数据同步的方法和系统 |
CN101552773A (zh) * | 2008-04-03 | 2009-10-07 | 华为技术有限公司 | 一种数据同步中处理数据项标识符映射的方法、设备和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102238223A (zh) | 2011-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102238223B (zh) | 一种面向移动设备的网络化个人数据管理方法 | |
CN101080056B (zh) | 一种移动终端的网络浏览器收藏夹的管理方法及系统 | |
JP4558945B2 (ja) | 少なくとも2つのホスト・データベースとリモート・データベースを有するデータベース・システム、及びそのようなデータベースの同期方法 | |
CN106294585B (zh) | 一种云计算平台下的存储方法 | |
KR101138491B1 (ko) | 동기화 방법 및 시스템 | |
CN100334583C (zh) | 利用智能卡实现移动个人化计算环境的方法和系统 | |
US8510404B2 (en) | Peer to peer Synchronization system and method | |
CN103582875B (zh) | 用于多源恢复的方法及装置 | |
US6694335B1 (en) | Method, computer readable medium, and system for monitoring the state of a collection of resources | |
JP3574017B2 (ja) | サーバ、クライアント、適応同期方法、データ変換方法およびプログラム記憶媒体 | |
CN100592291C (zh) | 一种对网页进行动态更新的方法、系统及设备 | |
CN102012933B (zh) | 分布式文件系统及利用其存储数据和提供服务的方法 | |
KR101190426B1 (ko) | 동기화 방법 및 시스템 | |
US7783712B2 (en) | System and method for bi-directional synchronized conversion of electronic mail data | |
CN102420843B (zh) | 一种基于云压缩链接的压缩和解压缩方法、装置及系统 | |
US20150199414A1 (en) | Locally cached file system | |
CN103731489B (zh) | 一种数据存储方法、系统和设备 | |
Peek et al. | EnsemBlue: Integrating distributed storage and consumer electronics | |
US20110196840A1 (en) | System and method for incremental backup storage | |
AU2018202510A1 (en) | Client storage for cloud-synchronized digital media assets | |
CN103605798A (zh) | 一种直接操作云端存储文件的方法 | |
CN105407044B (zh) | 一种基于nfs的云存储网关系统的实现方法 | |
CN102594874B (zh) | 一种同步处理方法和装置 | |
JP4142866B2 (ja) | データベース同期化装置及びプログラム | |
CN1996871A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121010 |
|
CF01 | Termination of patent right due to non-payment of annual fee |