一种自动备份应用数据且按需恢复的方法及装置的制造方法
【技术领域】
[0001]本发明涉及终端系统的应用数据备份和恢复技术,尤其涉及终端自动备份应用数据且按需恢复的方法及相关装置。
【背景技术】
[0002]如今手机游戏大行其道,很多游戏都有自动保存的机制,让玩家无法通过保存/加载(Save/Load)的方法玩游戏。
[0003]由于应用数据目录必须是根(root)用户,即最高权限用户才可以访问,一般应用乃至系统服务都无法修改,这导致很多用户不得不尝试root手机来备份数据,但这也带来极大的不便。
【发明内容】
[0004]本发明的目的在于提供一种自动备份应用数据且按需恢复的方法及装置,能更好地解决应用数据自动备份和按需恢复的问题。
[0005]根据本发明的一个方面,提供了一种自动备份应用数据且按需恢复的方法,包括:
[0006]应用层根据备份指令,将应用的应用数据目录设置到系统常量中;
[0007]底层利用所述系统常量中的所述应用数据目录,获取所述应用数据目录的目录权限;
[0008]底层将所述应用数据目录权限设置为可读写;
[0009]应用层对已设置为可读写权限的应用数据目录下的应用数据进行备份,以供此后利用所备份的应用数据进行按需恢复。
[0010]优选地,所述备份指令是根据所述应用的运行状态产生的,具体包括:
[0011 ] 对所述应用的运行状态进行检测;
[0012]当检测到所述应用被关闭时,生成所述备份指令。
[0013]优选地,还包括:
[0014]在获取所述应用数据目录的目录权限之后,将所述应用数据目录及目录权限备份到已备份列表;
[0015]在所述应用数据目录及目录权限备份到已备份列表之后,清空所述系统常量。
[0016]优选地,所述的应用层对已设置为可读写权限的应用数据目录下的应用数据进行备份的步骤包括:
[0017]应用层将已设置为可读写权限的应用数据目录下的应用数据与在前备份的应用数据进行比较,得到所述应用数据目录下的差异部分应用数据;
[0018]应用层备份所述差异部分应用数据,并记录所述差异部分应用数据的备份时间点,以供用户利用所备份时间点按需恢复应用数据。
[0019]优选地,还包括在应用层对已设置为可读写权限的应用数据目录下的应用数据进行备份的步骤完成之后,使用所述已备份列表中备份的目录权限,对应用数据目录的目录权限进行恢复的步骤。
[0020]优选地,所述对应用数据目录的目录权限进行恢复的步骤包括:
[0021]应用层再次将所述应用数据目录设置到系统常量中;
[0022]底层通过对所述系统常量的扫描,发现所述应用数据目录,并检查所发现的应用数据目录是否已存在于已备份列表中;
[0023]若所发现的应用数据目录已存在于已备份列表中,则将应用数据目录的可读写权限恢复成所述已备份列表中所备份的目录权限;
[0024]在将应用数据目录的可读写权限恢复成所述已备份列表中所备份的目录权限之后,清空所述系统常量。
[0025]优选地,所述的利用所备份的应用数据进行按需恢复的步骤包括:
[0026]应用层根据恢复指令,强制关闭应用,并按照用户选择的备份时间点,读取在所述备份时间点之前备份的所有应用数据,复制到已设置为可读写权限的应用数据目录下。
[0027]根据本发明的另一方面,提供了一种自动备份应用数据且按需恢复的装置,包括:
[0028]应用层设置模块,用于根据备份指令,将应用的应用数据目录设置到系统常量中;
[0029]底层权限获取模块,用于利用所述系统常量中的所述应用数据目录,获取所述应用数据目录的目录权限;
[0030]底层权限修改模块,用于将所述应用数据目录权限设置为可读写;
[0031]应用层数据备份模块,用于对已设置为可读写权限的应用数据目录下的应用数据进行备份,以供此后利用所备份的应用数据进行按需恢复。
[0032]优选地,所述应用层数据备份模块包括:
[0033]差异数据获取子模块,用于将已设置为可读写权限的应用数据目录下的应用数据与在前备份的应用数据进行比较,得到所述应用数据目录下的差异部分应用数据;
[0034]数据备份子模块,用于备份所述差异部分应用数据,并记录所述差异部分应用数据的备份时间点,以供用户利用所备份时间点按需恢复应用数据。
[0035]优选地,还包括:
[0036]应用层数据恢复模块,用于根据恢复指令,强制关闭应用,并按照用户选择的备份时间点,读取在所述备份时间点之前备份的所有应用数据,复制到已设置为可读写权限的应用数据目录下。
[0037]与现有技术相比较,本发明的有益效果在于:
[0038]本发明通过修改应用数据目录的目录权限,自动备份应用数据,并能让用户根据记录的备份时间点恢复应用数据,大大提升用户体验。
【附图说明】
[0039]图1是本发明实施例提供的自动备份应用数据且按需恢复的方法原理框图;
[0040]图2是本发明实施例提供的自动备份应用数据且按需恢复的装置结构框图;
[0041]图3是本发明实施例提供的底层启动流程图;
[0042]图4是本发明实施例提供的上层备份/恢复应用数据的流程图;
[0043]图5是本发明实施例提供的自动备份应用数据的流程图。
【具体实施方式】
[0044]以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0045]图1是本发明实施例提供的自动备份应用数据且按需恢复的方法原理框图,如图1所示,步骤包括:
[0046]步骤101:应用层根据备份指令,将应用的应用数据目录设置到系统常量中。
[0047]所述备份指令是根据所述应用的运行状态产生的,具体包括:对所述应用的运行状态进行检测;当出现用户退出应用或者应用被系统杀死等情况下,将检测到所述应用被关闭,此时,生成所述备份指令。
[0048]所述系统常量是系统中底层和应用层都可以读写的区域,常用其进行上层和底层的信息交互。
[0049]步骤102:底层利用所述系统常量中的所述应用数据目录,获取所述应用数据目录的目录权限。
[0050]所述步骤102包括:所述底层定时扫描系统常量,一旦发现所述系统常量不为空,则读取其内容,所读取的内容即是应用层设置到系统常量中的应用数据目录,然后通过系统提供的接口,获取所述应用数据目录的目录权限。
[0051]进一步地,在获取所述应用数据目录的目录权限后,所述底层将所述应用数据目录及目录权限备份到已备份列表,并清空所述系统常量。
[0052]步骤103:底层将所述应用数据目录权限设置为可读写。
[0053]具体地说,底层使用系统提供的接口,对所述应用数据目录进行权限设置。
[0054]一般,只有root用户才可使用系统提供的接口,对所有应用数据目录进行权限设置,其余用户设置时会因为没有权限而失败。本实施例使底层具有root用户的权限,并对定时扫描得到的应用数据目录的目录权限进行权限设置。
[0055]步骤104:应用层对已设置为可读写权限的应用数据目录下的应用数据进行备份,以供此后利用所备份的应用数据进行按需恢复。
[0056]所述步骤104包括:应用层将已设置为可读写权限的应用数据目录下的应用数据与在前备份的应用数据进行比较,得到所述应用数据目录下的差异部分应用数据,然后,备份所述差异部分应用数据,并记录所述差异部分应用数据的备份时间点,以供用户利用所备份时间点按需恢复应用数据。
[0057]进一步地,备份完成后,使用所述已备份列表中备份的目录权限,对应用数据目录的目录权限进行恢复,具体地说,应用层再次将所述应用数据目录设置到系统常量中,然后底层通过对所述系统常量的扫描,发现所述应用数据目录,并检查所发现的应用数据目录是否已存在于已备份列表中,若所发现的应用数据目录已存在于已备份列表中,则将应用数据目录的可读写权限恢复成所述已备份列表中所备份的目录权限,随后清空所述系统常量。
[0058]当用户需要进行数据恢复时,可以利用所备份的应用数据进行按需恢复。具体地说,首先所述应用层根据恢复指令,将应用的应用数据目录设置到系统常量中。其次,所述底层通过对所述系统常量的扫描,发现所述应用数据目录,并通过系统提供的接口,找到所述应用数据目录的目录权限,再将所述应用数据目录和目录权限保存至已备份列表中,并清空系统常量。然后,应用层强制关闭应用,并按照用户在前选择的