数据备份方法、装置、设备及存储介质与流程

文档序号:14910993发布日期:2018-07-10 23:24阅读:403来源:国知局

本发明实施例涉及计算机技术领域,尤其涉及一种数据备份方法、装置、设备及存储介质。



背景技术:

iOS是由苹果公司开发的移动操作系统,应用于苹果公司生产的iPhone、iPad以及iPod等设备中。由于iOS系统可以兼容大量的应用程序软件,满足了不同用户的个性化需求。

随着信息科学技术的不断发展,用户在iOS设备上安装的应用软件也越来越多,使得iOS设备上的数据量迅猛增长。但由于iOS操作系统是一个封闭的操作系统,因此,应用开发者只能使用苹果公司对外公开提供的开发接口进行应用软件的开发,从而使得开发出的针对iOS操作系统的应用软件所能够实现的功能受制于提供的开发接口。由于开发接口不同,非iOS操作系统中的数据备份的方法不能应用于iOS操作系统,用户对iOS设备的数据备份只能使用iOS设备中自带的iCloud备份功能,或者苹果公司的iTunes。

利用上述方法对iOS设备进行数据备份,在备份完成时会生成记录备份文件基本信息的.db文件或.mbdb文件,一旦备份中途失败,.db文件或.mbdb文件则不会生成,也即失败前已备份成功的文件就不能在恢复备份数据时使用,这严重浪费了系统资源。同时,随着iOS设备的容量逐步增加,用户需要数据备份的数据量也明显增大,采用iCloud可以选择需要备份的应用,但iCloud的免费存储空间是有限的,采用iTunes进行备份没有存储空间的限制,但对整个设备进行数据备份无疑会降低备份效率。



技术实现要素:

本发明实施例提供了一种数据备份方法、装置、设备及存储介质,以优化现有技术中基于iOS系统的数据备份方案。

第一方面,本发明实施例提供了一种数据备份方法,包括:

目标备份设备在与源备份设备成功建立备份连接后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统;

目标备份设备接收所述源备份设备发送的至少一个目标下载文件的下载描述信息,所述下载描述信息包括:所述目标下载文件在所述源备份设备中的设备绝对路径以及所述目标下载文件在所述目标备份设备中的本地存储路径;

所述目标备份设备如果根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,则将所述目标下载文件下载至所述本地存储路径中,其中,所述备份核对信息包括:所述下载描述信息以及所述至少一个备份应用程序的应用标识,或所述下载描述信息以及所述至少一个备份应用程序对应的备份路径。

第二方面,本发明实施例还提供了一种数据备份装置,包括:

获取模块,用于目标备份设备在与源备份设备成功建立备份连接后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统;

接收模块,用于目标备份设备接收所述源备份设备发送的至少一个目标下载文件的下载描述信息,所述下载描述信息包括:所述目标下载文件在所述源备份设备中的设备绝对路径以及所述目标下载文件在所述目标备份设备中的本地存储路径;

下载模块,用于所述目标备份设备如果根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,则将所述目标下载文件下载至所述本地存储路径中,其中,所述备份核对信息包括:所述下载描述信息以及所述至少一个备份应用程序的应用标识,或所述下载描述信息以及所述至少一个备份应用程序对应的备份路径。

第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明任意实施例所述的数据备份方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的数据备份方法。

本发明实施例提供了一种数据备份方法、装置、设备及存储介质,该方法在目标备份设备在与源iOS备份设备成功建立备份连接之后,通过目标设备接收源iOS目标设备发送的每一个目标下载文件的下载描述消息,根据备份应用程序的应用标识以及所述下载描述信息,或根据备份应用程序的备份路径以及所述下载描述信息,确定每一个目标下载文件所述的备份应用程序,进而根据目标下载描述信息读取并保存目标下载文件。通过上述方法备份的每一个目标文件都可以在源iOS目标设备进行数据恢复时使用,避免了备份系统资源的浪费,同时,上述方法可以仅对用户选择的备份应用程序进行数据备份,无需对整个源iOS目标设备进行数据备份,提高了源iOS目标设备的数据备份效率。

附图说明

图1是本发明实施例一中的一种数据备份方法的流程图;

图2是本发明实施例二中的一种数据备份方法的流程图;

图3是本发明实施例三中的一种数据备份装置的结构示意图;

图4是为本发明实施例四中的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

实施例一

本实施例提供了一种数据备份方法,可适用于基于用户的个性化备份需求对iOS设备进行数据备份的情况,该方法可以由本发明实施例提供的数据备份装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成在处理器中。

如图1所示,本实施例的方法具体包括:

S110、目标备份设备在与源备份设备成功建立备份连接后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统。

源备份设备指的是用户需要备份数据的iOS设备,例如是iPhone、iPad或者iPod等,目标备份设备指的是用户把备份数据进行存储的设备,例如是个人计算机。

首先,将源备份设备和目标备份设备通过数据线进行连接,成功建立备份连接,才能进行数据备份的操作,其中,可以将目标备份设备在与源备份设备成功建立备份连接,具体为:目标备份设备建立与源备份设备的信任通信,且确定所述源备份设备中备份服务的备份功能请求成功,其中,所述源备份设备的备份服务的协议版本满足设定版本需求。

源备份设备需要经用户确认后建立与目标备份设备的信任连接,目标备份设备即可通过调用接口启动源备份设备的备份服务,具体为iOS设备中的com.apple.mobilebackup2服务,该服务主要提供iTunes备份、加密、恢复等功能,该服务成功启动后即可保存相关的句柄资源以便实现对应的功能。其中,需要对源备份设备中的com.apple.mobilebackup2服务协议版本进行校验,是否满足设定的版本需求,具体的,当前协议版本仅支持2.0版本和2.1版本。当用户根据个人需求选择备份应用程序之后,源备份设备通过com.apple.mobilebackup2服务请求备份功能,如果确定请求成功,目标备份设备即可接收到备份消息,并根据备份消息的类型进行后续循环处理操作。如果由于例如系统资源不够、设置错误等问题导致com.apple.mobilebackup2服务启动失败,或通过com.apple.mobilebackup2服务请求备份功能失败,或com.apple.mobilebackup2服务的协议版本不满足设定的版本需求,则直接退出,不能继续执行备份消息循环处理的操作。

目标备份设备获取源备份设备提供的与用户选择的备份应用程序对应的备份应用程序的应用的标识,其中,备份应用程序包括iOS系统应用程序和第三方应用程序,对应的,备份应用程序的应用标识具体为iOS系统应用程序的固定应用标识和第三方应用程序的唯一应用标识,iOS系统应用程序的固定应用标识为源备份设备直接获取的,第三方应用程序的唯一应用标识为源备份设备通过设定安装代理服务获取的。

对于iOS系统应用程序,例如是短信、联系人、通话记录、备忘录等iOS系统应用,由于这些应用程序在iOS设备中的存储路径是固定的,因此这些应用程序的bunddleid是空的,对应的域值一般为HomeDomain、WirelessDomain、CameraRollDomain等,但这些应用程序在源备份设备中的固定存储路径是可以事先被目标备份设备获取的,即源备份设备直接获取到这些应用程序的固定存储路径作为固定应用标识,并将与用户选择的备份应用程序匹配的设备存储路径发送至目标备份设备。

对于第三方应用程序,例如QQ、微信等,iOS设备需通过设定安装代理服务获取,具体的,启动iOS设备中的com.apple.mobile.installation_proxy服务,通过该服务可以获取所有第三方应用程序的图标、名称和唯一应用标识bunddleid等等。

随后,目标备份设备接收到备份消息,对备份消息进行循环处理,其中,一个备份消息可以对应多个文件。具体的,目标备份设备对根据每个备份消息的消息类型(记为ctype)做出对应的处理操作:

如果ctype等于"DLMessageDownloadFiles",则上传文件到源备份设备后继续循环;如果ctype等于"DLMessageUploadFiles",则下载文件到目标备份设备后继续循环;如果ctype等于"DLMessageGetFreeDiskSpace",则获取目标备份设备备份盘剩余空间后继续循环;如果ctype等于"DLContentsOfDirectory",则获取目录下文件信息后继续循环;如果ctype等于"DLMessageCreateDirectory",则创建目录后继续循环;如果ctype等于"DLMessageMoveFiles"或"DLMessageMoveItems",则移动文件后继续循环;如果ctype等于"DLMessageRemoveFiles"或"DLMessageRemoveItems",则删除文件后继续循环;如果ctype等于"DLMessageCopyItem",则复制文件后继续循环;如果ctype等于"DLMessageDisconnect",则退出循环;如果ctype等于"DLMessageProcessMessage",则响应消息并退出循环。其中,如果超过规定的循环次数,则退出循环。

本实施例中,将对ctype等于"DLMessageUploadFiles"时下载文件到目标备份设备的操作进行详细的解释说明。

目标备份设备获取与至少一个备份应用程序对应的备份路径,备份路径可以是目标备份设备在前次备份过程中存储的,也可以是在本次备份过程中新建的,即,在目标备份设备端记录的用户选择的各个备份应用程序的备份路径,其中,可以将备份路径具体为备份应用程序在源备份设备端的根目录信息,目标备份设备会根据备份路径读取源备份设备以获取需要下载的文件。

具体的,如果用户选择的备份应用程序中为iOS系统应用程序,例如是短信、联系人、通话记录、备忘录等iOS系统应用等,目标备份设备中这些备份应用程序的备份路径即可以是这些iOS系统应用的固定应用标识,也即这些iOS系统应用在源备份设备中的固定存储路径,如“短信”在源备份设备中的存储路径为“/var/mobile/Library/SMS”、“联系人”在源备份设备中的存储路径为“/var/mobile/Library/AddressBook”、“通话记录”在源备份设备中的存储路径为“/var/mobile/Library/CallHistoryDB”或“/var/wireless/Library/CallHistory”、“备忘录”在源备份设备中的存储路径为“/var/mobile/Library/Notes”等,相应的,在目标备份设备端存储的或新建的这些备份应用程序的备份路径即可对应为上述路径。

例如,用户选取了三个备份应用程序,将第一备份应用程序的备份路径记为root1,第二备份应用程序的备份路径记为root2,第三备份应用程序的备份路径记为root3。目标备份设备获取到这三个备份应用程序对应的备份路径root1、root2以及root3,根据root1、root2以及root3读取源备份设备以获取三个备份应用程序中需要下载的文件。其中,如果第一备份应用程序在之前备份过程中已备份过,那么root1在之前备份过程中被赋值过,root1即为被赋值后的结果;如果第二备份应用程序在之前备份过程中从未备份过,那么root2可以为在本次备份过程中新建的备份路径,与第二备份应用程序的实际备份路径可能不符。

S120、目标备份设备接收所述源备份设备发送的至少一个目标下载文件的下载描述信息,所述下载描述信息包括:所述目标下载文件在所述源备份设备中的设备绝对路径以及所述目标下载文件在所述目标备份设备中的本地存储路径。

一个ctype等于"DLMessageUploadFiles"的备份消息,对应于多个下载文件,目标备份设备需要循环对每一个下载文件进行处理,进而完成对整个备份消息的处理。

源备份设备将一个目标下载文件的下载描述信息发送至目标备份设备中,具体为发送该目标下载文件在源备份设备中的设备绝对路径,以及在目标备份设备中的本地存储路径,其中,本地存储路径是根据用户之前选择的目标备份设备中存储路径和设备绝对路径中的部分信息而形成的。

例如,备份应用程序QQ中某个目标下载文件在源备份设备中的设备绝对路径为:

“/var/mobile/Containers/Data/Application/8628D00A-CCE6-4B8A-89F6-BE23EA81FA06/Documents/contents/771084591/QQ.db”,

其中,设备绝对路径可以截取为根目录部分和相对路径部分,具体的,

“/var/mobile/Containers/Data/Application/8628D00A-CCE6-4B8A-89F6-BE23EA81FA06”为根目录部分,根目录部分的具体形式为

“/var/mobile/Containers/Data/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX”或

“/var/mobile/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX”,

而“Documents/contents/771084591/QQ.db”为相对路径部分,在设备绝对路径中为明文形式。

假如,用户之前选择的目标备份设备中存储路径为“D:/”,那么本地存储路径为

“D:/1267a8cafa75c7a7de2cd81d1973d75cabe457c0/Snapshot/8a/8a92063f70049deeb175cb053ba9240885264354”,

其中,

“1267a8cafa75c7a7de2cd81d1973d75cabe457c0/Snapshot/8a/8a92063f70049deeb175cb053ba9240885264354”为相对路径部分的密文形式,这里具体为哈希文。

S130、目标备份设备如果根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,则将所述目标下载文件下载至所述本地存储路径中,其中,所述备份核对信息包括:所述下载描述信息以及所述至少一个备份应用程序的应用标识,或所述下载描述信息以及所述至少一个备份应用程序对应的备份路径。

目标备份设备根据下载描述信息以及与用户选择的备份应用程序对应的各个应用标识,或者根据下载描述信息以及与用户选择的备份应用程序对应的备份路径(前述例子中的root1、root2以及root3)确定目标下载文件属于的备份应用程序,则根据目标下载文件所属备份应用程序的备份路径读取源备份设备以获取该目标下载文件,并保存至该目标下载文件的本地存储路径中。之后,根据上述下载方法,循环处理与备份消息对应的其他下载文件,直至处理完与该备份消息对应的所有备份文件后,再处理下一个备份消息。

作为本实施例一种具体的实施方式,可以将目标备份设备根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,具体为:

目标备份设备截取与所述目标下载文件的所述设备绝对路径对应的根目录部分以及相对路径部分;目标备份设备如果确定根据与至少一个备份应用程序对应的备份路径读取源备份设备获得的文件结果不都为非空,且与非空文件结果对应的备份路径与截取的根目录部分不匹配,则根据至少一个备份应用程序的应用标识,构造域值;目标备份设备根据构造的至少一个所述域值,以及截取的所述相对路径部分,计算与目标下载文件对应的至少一个文件名;目标备份设备如果确定计算得到的目标文件名与目标下载文件的本地存储路径相匹配,则确定目标下载文件属于与目标文件名对应的第一目标备份应用程序;目标备份设备将第一目标备份应用程序的备份路径替换为截取的根目录部分。

将目标备份设备将目标下载文件下载至本地存储路径中,具体为:

目标备份设备根据截取的根目录部分读取所述源备份设备,将获得的目标下载文件保存至本地存储路径中。

目标备份设备根据前述截取方法,截取与目标下载文件的设备绝对路径对应的根目录部分以及相对路径部分,将根目录部分即为prefix,将相对路径部分记为rPath。延续前续例子,用户选择了三个备份应用程序,对应的备份路径分别为root1、root2以及root3,目标备份设备根据root1、root2以及root3读取源备份设备获得的文件结果不都为非空,且与非空文件结果对应的备份路径与截取的根目录部分不匹配,例如,根据root1、root2以及root3读取源备份设备获得的文件结果都空,或者是根据root1和root2读取源备份设备获得的文件结果为非空,而根据root3读取源备份设备获得的文件结果为空,且root1和root2都不能与prefix匹配成功,也就是目标备份设备无法根据root1、root2以及root3读取源备份设备以获取目标下载文件,同时也无法确定目标下载文件是否为用户需要下载的文件。

在这种情况下,则直接根据用户选择的所有备份应用程序的应用标识构造域值,即根据与用户选择的所有备份应用程序的应用标识构建三个域值,并结合rPath计算出三个文件名。

具体的,目标备份设备根据构造的至少一个域值,以及截取的所述相对路径部分,计算与目标下载文件对应的至少一个文件名,包括:

FileName=SHA1("Domain-rPath");

其中,FileName为所述目标下载文件的文件名,Domain为所述域值,rPath为所述相对路径部分,SHA1("*")为安全哈希算法。

假如用户需要备份一个第三方应用程序的数据,即可通过com.apple.mobile.installation_proxy服务来获取对应应用程序的bunddleid,如“铁路12306”的bunddleid为“cn.12306.rails12306”,其域值Domain即为“AppDomain-cn.12306.rails12306”,QQ的bunddleid为“com.tencent.mqq”,其Domain即为“AppDomain-com.tencent.mqq”。简单来说,域值Domain可以根据bunddleid进行构建。

根据备份应用程序的域值Domain,结合目标下载文件的设备绝对路径中的相对路径部分rPath,利用哈希算法就可以计算出下载文件的文件名。

目标备份设备将计算得出的文件名与目标下载文件的本地存储路径中进行匹配查找,如果所述本地路径中包括该计算得出的其中一个文件名,则确定该目标下载文件属于与该文件名对应的备份应用程序,将根目录部分prefix赋值给对应的备份应用程序的备份路径(例如是root3),更新root3并保存,并根据截取的根目录部分(也即root3)读取源备份设备,将获得的目标下载文件保存至本地存储路径中。

根据前述例子,备份应用程序QQ中某个目标下载文件在源备份设备中的设备绝对路径为:

“/var/mobile/Containers/Data/Application/8628D00A-CCE6-4B8A-89F6-BE23EA81FA06/Documents/contents/771084591/QQ.db”,

本地存储路径为:

“D:/1267a8cafa75c7a7de2cd81d1973d75cabe457c0/Snapshot/8a/8a92063f70049deeb175cb053ba9240885264354”,

根据上述方法,根据QQ的bunddleid“com.tencent.mqq”构建Domain“AppDomain-com.tencent.mqq”,

结合相对路径部分“Documents/contents/771084591/QQ.db”计算出的文件名为:

“8a92063f70049deeb175cb053ba9240885264354”,该文件名可以在本地存储路径中找到。

具体的,上述方法,在目标备份设备截取与目标下载文件的设备绝对路径对应的根目录部分以及相对路径部分之后,还包括:

目标备份设备如果确定截取的所述根目录部分与第二目标备份应用程序的备份路径相匹配,且根据所述第二目标备份应用程序的备份路径读取所述源备份设备获得的文件结果为非空,则确定所述目标下载文件属于所述第二目标备份应用程序。

目标备份设备如果确定根据root2读取源备份设备获得的文件结果为非空,且root2与根目录部分prefix可以匹配成功,那么则确定所述目标下载文件属于与root2对应的备份应用程序,进而根据截取的根目录部分(也即root2)读取源备份设备,将获得的目标下载文件保存至本地存储路径中。

具体的,上述方法,还包括:目标备份设备如果确定根据与所述至少一个备份应用程序对应的备份路径读取所述源备份设备获得的文件结果都为非空,且与非空文件结果对应的备份路径与截取的所述根目录部分都不匹配,则确定目标下载文件不属于所述备份应用程序;目标备份设备放弃对目标下载文件的下载。

目标备份设备如果根据root1、root2以及root3读取源备份设备获得的文件结果都为非空,且root1、root2以及root3都不能与根目录部分prefix可以匹配成功,则确定目标下载文件不属于用户所选择的任意一个备份应用程序,进而不对该目标下载文件进行下载处理,继续循环处理与备份消息对应的下一个下载文件。

本实施例提供的一种数据备份方法,可以只对用户选择的备份应用程序进行备份,无需对整个iOS设备进行备份,避免了由于备份一些非必要数据而增加备份时间。通过根据用户选择的备份应用程的应用标识构造域值,并结合目标下载文件的设备绝对路径中的相对路径部分计算目标下载文件的文件名,如果目标下载文件的本地存储路径中包括该文件名,则根据设备绝对路径中的根目录部分读取源备份设备以获取目标下载文件并存储的技术手段,优化了现有技术中基于iOS系统的数据备份方案,即使备份过程意外中断,已备份成功的文件仍可以在数据恢复时使用,避免了备份系统资源的浪费。

在上述备份方法的基础上,在确定了目标下载文件的本地存储路径中包括计算得到的文件名的情况下,将设备绝对路径中的根目录部分赋值给与目标下载文件对应的备份应用程序的备份路径并存储,以使下次备份时可以直接使用备份应用程序的备份路径与目标下载文件的设备绝对路径中的根目录部分进行匹配,如果匹配成功,且根据该备份路径可以读取到源备份设备中的目标下载文件,即对目标下载文件直接下载存储,简略了计算每个目标下载文件的文件名的过程,进而提高了数据备份的效率。

实施例二

本实施例提供的一种具体的实施方式,假设用户选择的备份应用程序为N个,目标备份设备端记录的备份应用程序1的备份路径为root1,备份应用程序2的备份路径为root2,……,备份应用程序N的备份路径为rootN。

如图2所示,针对某一个目标下载文件,上述数据备份方法包括:

S210、目标备份设备接收源备份设备发送的目标下载文件的下载描述信息,下载描述信息包括:目标下载文件在源备份设备中的设备绝对路径以及目标下载文件在目标备份设备中的本地存储路径,其中,设备绝对路径由根目录部分和相对路径部分构成,本地存储路径由用户选择的目标备份设备中的存储地址和相对路径部分构成。

S220、目标备份设备根据备份路径root1~rootN读取源备份设备,如果确定根据rootX读取源备份设备获得的文件结果为非空,且rootX与设备绝对路径中的根目录部分匹配,则执行S230;如果确定根据root1~rootN读取源备份设备获得的文件结果不都为非空,且与非空结果对应的rootX均不能与设备绝对路径中的根目录部分匹配,则执行S240;如果确定根据root1~rootN读取源备份设备获得的文件结果都为非空,且root1~rootN均不能与设备绝对路径中的根目录部分匹配,则执行S260。

S230、目标备份设备根据截取的根目录部分读取源备份设备,将获得的目标下载文件保存至本地存储路径中。

S240、目标备份设备根据N个备份应用程序的应用标识bunddleid构造N个域值,并结合设备绝对路径中的相对路径部分,利用安全哈希算法计算得到N个文件名。

S250、目标备份设备如果确定本地存储路径中包括其中一个文件名,则将设备绝对路径中的根目录部分赋值为与该文件名对应的rootX,并根据截取的根目录部分读取源备份设备,将获得的目标下载文件保存至本地存储路径中。

S260、目标备份设备不对目标下载文件进行下载处理,转至接收源备份设备发送的下一个目标下载文件的下载描述信息。

实施例三

本实施例提供了一种数据备份装置,可适用于基于用户的个性化备份需求对iOS设备进行数据备份的情况,该装置可采用软件和/或硬件的方式实现,并一般可集成在处理器中。如图3所示,所述装置包括:获取模块310、接收模块320和下载模块330,其中:

获取模块310,用于目标备份设备在与源备份设备成功建立备份连接后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统;

接收模块320,用于目标备份设备接收所述源备份设备发送的至少一个目标下载文件的下载描述信息,所述下载描述信息包括:所述目标下载文件在所述源备份设备中的设备绝对路径以及所述目标下载文件在所述目标备份设备中的本地存储路径;

下载模块330,用于所述目标备份设备如果根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,则将所述目标下载文件下载至所述本地存储路径中,其中,所述备份核对信息包括:所述下载描述信息以及所述至少一个备份应用程序的应用标识,或所述下载描述信息以及所述至少一个备份应用程序对应的备份路径。

本实施例提供的一种数据备份装置,可以只对用户选择的备份应用程序进行备份,无需对整个iOS设备进行备份,避免了由于备份一些非必要数据而增加备份时间。通过根据用户选择的备份应用程的应用标识构造域值,并结合目标下载文件的设备绝对路径中的相对路径部分计算目标下载文件的文件名,如果目标下载文件的本地存储路径中包括该文件名,则根据设备绝对路径中的根目录部分读取源备份设备以获取目标下载文件并存储的技术手段,优化了现有技术中基于iOS系统的数据备份方案,即使备份过程意外中断,已备份成功的文件仍可以在数据恢复时使用,避免了备份系统资源的浪费。

在上述备份方法的基础上,在确定了目标下载文件的本地存储路径中包括计算得到的文件名的情况下,将设备绝对路径中的根目录部分赋值给与目标下载文件对应的备份应用程序的备份路径并存储,以使下次备份时可以直接使用备份应用程序的备份路径与目标下载文件的设备绝对路径中的根目录部分进行匹配,如果匹配成功,且根据该备份路径可以读取到源备份设备中的目标下载文件,即对目标下载文件直接下载存储,简略了计算每个目标下载文件的文件名的过程,进而提高了数据备份的效率。

在上述技术方案的基础上,下载模块330具体包括:路径截取单元、域值构造单元、文件名计算单元、文件名匹配单元、路径更新单元和下载单元,其中,

路径截取单元,用于目标备份设备截取与所述目标下载文件的所述设备绝对路径对应的根目录部分以及相对路径部分;

域值构造单元,用于目标备份设备如果确定根据与所述至少一个备份应用程序对应的备份路径读取所述源备份设备获得的文件结果不都为非空,且与非空文件结果对应的备份路径与截取的所述根目录部分不匹配,则根据至少一个备份应用程序的应用标识,构造域值;

文件名计算单元,用于目标备份设备根据构造的至少一个所述域值,以及截取的所述相对路径部分,计算与所述目标下载文件对应的至少一个文件名;

文件名匹配单元,用于目标备份设备如果确定计算得到的目标文件名与所述目标下载文件的所述本地存储路径相匹配,则确定所述目标下载文件属于与所述目标文件名对应的第一目标备份应用程序;

路径更新单元,用于目标备份设备将所述第一目标备份应用程序的备份路径替换为截取的所述根目录部分;

下载单元,用于所述目标备份设备根据截取的所述根目录部分读取所述源备份设备,将获得的目标下载文件保存至所述本地存储路径中。

具体的,下载模块330还包括:路径第一匹配单元,用于在目标备份设备截取与所述目标下载文件的所述设备绝对路径对应的根目录部分以及相对路径部分之后,目标备份设备如果确定截取的所述根目录部分与第二目标备份应用程序的备份路径相匹配,且根据所述第二目标备份应用程序的备份路径读取所述源备份设备获得的文件结果为非空,则确定所述目标下载文件属于所述第二目标备份应用程序。

具体的,下载模块330还包括:路径第二匹配单元和丢弃单元,其中,

路径第二匹配单元用于目标备份设备如果确定根据与所述至少一个备份应用程序对应的备份路径读取所述源备份设备获得的文件结果都为非空,且与非空文件结果对应的备份路径与截取的所述根目录部分都不匹配,则确定所述目标下载文件不属于所述备份应用程序;

丢弃单元,用于目标备份设备放弃对所述目标下载文件的下载。

具体的,文件名计算单元用于根据下述公式计算与所述目标下载文件对应的至少一个文件名:

FileName=SHA1("Domain-rPath");

其中,FileName为所述目标下载文件的文件名,Domain为所述域值,rPath为所述相对路径部分,SHA1("*")为安全哈希算法。

在上述实施方式的基础上,获取模块310具体用于目标备份设备建立与所述源备份设备的信任通信,且确定所述源备份设备中备份服务的备份功能请求成功后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统,所述源备份设备的备份服务的协议版本满足设定版本需求。

具体的,所述备份应用程序包括iOS系统应用程序和第三方应用程序,所述备份应用程序的应用标识包括所述iOS系统应用程序的固定应用标识和所述第三方应用程序的唯一应用标识,其中,所述iOS系统应用程序的固定应用标识为所述源备份设备直接获取的,所述第三方应用程序的唯一应用标识为所述源备份设备通过设定安装代理服务获取的。

上述数据备份装置可执行本发明任意实施例所提供的数据备份方法,具备执行的数据备份方法相应的功能模块和有益效果。

实施例四

图4为本发明实施例四提供的一种计算机设备的结构示意图,如图4所示,该计算机设备包括处理器410、存储器420、输入装置430和输出装置440;计算机设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;计算机设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线连接为例。

存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例中数据备份方法对应的程序指令/模块(例如,数据备份装置中的获取模块310、接收模块320和下载模块330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的用于计算机设备的操作。

存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置430可用于接收输入的触摸信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的数据备份方法,该方法包括:

目标备份设备在与源备份设备成功建立备份连接后,获取源备份设备提供的至少一个备份应用程序的应用标识,并获取与至少一个备份应用程序对应的备份路径,所述源备份设备为iOS操作系统;

目标备份设备接收所述源备份设备发送的至少一个目标下载文件的下载描述信息,所述下载描述信息包括:所述目标下载文件在所述源备份设备中的设备绝对路径以及所述目标下载文件在所述目标备份设备中的本地存储路径;

所述目标备份设备如果根据备份核对信息确定所述目标下载文件属于所述至少一个备份应用程序,则将所述目标下载文件下载至所述本地存储路径中,其中,所述备份核对信息包括:所述下载描述信息以及所述至少一个备份应用程序的应用标识,或所述下载描述信息以及所述至少一个备份应用程序对应的备份路径。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备执行本发明各个实施例所述的方法。

值得注意的是,上述数据备份装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1