一种短信息的还原方法和装置制造方法及图纸

技术编号:15391415 阅读:156 留言:0更新日期:2017-05-19 04:44
本发明专利技术实施例提供了一种短信息的还原方法和装置,该方法包括:在移动终端中获取待还原的短信息备份文件;将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库。由于每两次将短信息备份文件写入到内存并从内存写入短信息数据库之间间隔的时间一般很短暂,保证了整体还原操作的正常执行,在短信息备份文件的数据量较大的情况下,每次写入一部分数据到内存中、再将该部分数据写入数据库,复用一块内存,可以减少每次写入内存的数据量,减少内存的占用量,保证在内存的可承受范围内,避免出现超出内存的情况,保证运行正常。

Method and device for reducing short message

The embodiment of the invention provides a method and apparatus for reducing short message, the method includes: obtaining short message backup file to be restored in the mobile terminal; the short information of the short message in the backup file at least two write memory, and at least two times to write short message from the database memory in. Because every two times the short information backup files are written to memory and write a short interval between information database from memory time are generally short, to ensure the normal execution of the restore operation, information in a short amount of data backup file is large, each write a score according to the memory, to be part of the data write to the database, reuse a block of memory, each write memory can reduce the amount of data, reduce the memory occupied amount of guarantee in memory can withstand the range, avoid beyond the memory of the situation, to ensure the normal operation of.

【技术实现步骤摘要】
一种短信息的还原方法和装置
本专利技术涉及通信的
,特别是涉及一种短信息的还原方法和一种短信息的还原装置。
技术介绍
随着通信科技的发展,诸如手机、手表等移动终端在人们的工作、学习、日常交流等各方面的使用率也越来越高。用户经常使用短信、彩信等短信息与他人进行通信,长期积累,使得移动终端内累积了数量众多的短信息,尤其对于商务人士而言,累积的短信息的数量可能多达数万条,并存储在短信息数据库中。为了避免在系统崩溃、更换移动终端等情况下导致短信息丢失,用户通常会对短信息进行备份,在适当的时候进行还原。目前,在还原短信息时,通常一次性将备份文件全部读入内存,再写入短信息数据库中。当备份文件中的短信息的数量过多时,会大量占用内存,甚至会出现超出内存(OOM,OutOfMemory),造成运行异常。
技术实现思路
鉴于上述问题,为了解决上述短信息还原时占用内存过大的问题,本专利技术实施例提出了一种短信息的还原方法和相应的一种短信息的还原装置。依据本专利技术的一个方面,提供了一种短信息的还原方法,包括:在移动终端中获取待还原的短信息备份文件;将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库。可选地,所述将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库的步骤包括:从所述短信息备份文件中读取部分短信息;将所述部分短信息存储至内存;将存储在内存的所述部分短信息写入短信息数据库中;判断是否将所述短信息备份文件中的短信息全部写入所述短信息数据库;若是,则结束将存储在内存的短信息写入短信息数据库中;若否,则返回执行所述从所述短信息备份文件中读取部分短信息的步骤。可选地,所述从所述短信息备份文件中读取部分短信息的步骤包括:读取位置变量的值,获得句柄位置;从所述句柄位置开始,从所述短信息备份文件中读取一段备份数据;在所述备份数据中识别短信息的结束标识符;以所述结束标识符为节点,将所述备份数据划分为数据片段,作为短信息;将所述备份数据的句柄位置写入所述位置变量。可选地,所述从所述短信息备份文件中读取部分短信息的步骤还包括:从数据变量中提取上一次划分短信息时剩余的数据片段;将上一次剩余的数据片段拼接在本次第一条数据片段之前,获得完整的数据片段;和/或,当本次最后一条数据片段不具有结束标识符时,将本次最后一条数据片段存储至数据变量中。可选地,所述从所述短信息备份文件中读取部分短信息的步骤还包括:记录所述备份数据的长度;当所述长度为零时,结束从所述短信息备份文件中读取部分短信息。可选地,所述将所述部分短信息存储至内存的步骤包括:在内存中设置一数组;将所述部分短信息写入所述数组中。可选地,所述将存储在内存的所述部分短信息写入短信息数据库中的步骤包括:配置初始变量、终结变量,所述初始变量的值为所述数组中第一条短信息在所有短信息中的排序,所述终结变量的值为位于所述数组中最后一条短信息下一条的短信息在所有短信息中的排序;将所述初始变量的值赋予还原变量;判断所述还原变量的值是否大于或等于所述终结变量的值;若是,则结束将存储在内存的所述部分短信息写入短信息数据库中;若否,则将所述数组中位于所述还原变量的短信息写入短信息数据库中;将所述还原变量的值加一,返回执行所述判断所述还原变量的值是否大于或等于所述终结变量的值的步骤。可选地,所述判断是否将所述短信息备份文件中的短信息全部写入所述短信息数据库的步骤包括:判断所述还原变量的值是否大于或等于所述短信息备份文件中短信息的总数量;若是,则确定将所述短信息备份文件中的短信息全部写入所述短信息数据库;若否,则确定未将所述短信息备份文件中的短信息全部写入所述短信息数据库。根据本专利技术的另一方面,提供了一种短信息的还原装置,其特征在于,包括:短信息备份文件获取模块,用于在移动终端中获取待还原的短信息备份文件;多次存储模块,用于将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库。可选地,所述多次存储模块包括:部分短信息读取子模块,用于从所述短信息备份文件中读取部分短信息;内存存储子模块,用于将所述部分短信息存储至内存;短信息数据库写入子模块,用于将存储在内存的所述部分短信息写入短信息数据库中;短信息存储完成子模块,用于判断是否将所述短信息备份文件中的短信息全部写入所述短信息数据库;若是,则调用存储结束子模块,若否,则返回调用所述部分短信息读取子模块;调用存储结束子模块,用于结束将存储在内存的短信息写入短信息数据库中。可选地,所述部分短信息读取子模块包括:句柄位置读取单元,用于读取位置变量的值,获得句柄位置;备份数据读取单元,用于从所述句柄位置开始,从所述短信息备份文件中读取一段备份数据;结束标识符识别单元,用于在所述备份数据中识别短信息的结束标识符;数据片段划分单元,用于以所述结束标识符为节点,将所述备份数据划分为数据片段,作为短信息;句柄位置更新单元,用于将所述备份数据的句柄位置写入所述位置变量。可选地,所述部分短信息读取子模块还包括:剩余数据片段提取单元,用于从数据变量中提取上一次划分短信息时剩余的数据片段;数据片段拼接单元,用于将上一次剩余的数据片段拼接在本次第一条数据片段之前,获得完整的数据片段;和/或,剩余数据片段存储单元,用于在本次最后一条数据片段不具有结束标识符时,将本次最后一条数据片段存储至数据变量中。可选地,所述部分短信息读取子模块还包括:长度记录单元,用于记录所述备份数据的长度;结束读短信息备份单元,用于在所述长度为零时,结束从所述短信息备份文件中读取部分短信息。可选地,所述内存存储子模块包括:数组设置单元,用于在内存中设置一数组;数组写入单元,用于将所述部分短信息写入所述数组中。可选地,所述短信息数据库写入子模块包括:变量值配置单元,用于配置初始变量、终结变量所述初始变量的值为所述数组中第一条短信息在所有短信息中的排序,所述终结变量的值为位于所述数组中最后一条短信息下一条的短信息在所有短信息中的排序;赋值模块,用于将所述初始变量的值赋予还原变量;终结变量判断单元,用于判断所述还原变量的值是否大于或等于所述终结变量的值;若是,则调用结束写短信息数据库单元,若否,则调用短信息读取单元;结束写短信息数据库单元,用于结束将存储在内存的所述部分短信息写入短信息数据库中;短信息还原单元,用于将所述数组中位于所述还原变量的短信息写入短信息数据库中;还原变量值变更单元,用于将所述还原变量的值加一,返回调用所述遍历结束判断子模块。可选地,所述存储完成判断子模块包括:短信息总数量判断单元,用于判断所述还原变量的值是否大于或等于所述短信息备份文件中短信息的总数量;若是,则调用第一确认单元,若否,则调用第二确认单元;第一确认单元,用于确定将所述短信息备份文件中的短信息全部写入所述短信息数据库;第二确认单元,用于确定未将所述短信息备份文件中的短信息全部写入所述短信息数据库。本专利技术实施例包括以下优点:本专利技术实施例将还原操作看作是对于要进行还原操作的短信息备份文件,一部分一部分地写入短信息数据库,每一部分的数据是相对独立的,因此,可以基于懒加载机制,将短信息备份文件通过至少分两次写入内存,并至少分两次从本文档来自技高网...
一种短信息的还原方法和装置

【技术保护点】
一种短信息的还原方法,其特征在于,包括:在移动终端中获取待还原的短信息备份文件;将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库。

【技术特征摘要】
1.一种短信息的还原方法,其特征在于,包括:在移动终端中获取待还原的短信息备份文件;将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库。2.根据权利要求1所述的方法,其特征在于,所述将所述短信息备份文件中的短信息至少分两次写入内存,并至少分两次从所述内存中写入短信息数据库的步骤包括:从所述短信息备份文件中读取部分短信息;将所述部分短信息存储至内存;将存储在内存的所述部分短信息写入短信息数据库中;判断是否将所述短信息备份文件中的短信息全部写入所述短信息数据库;若是,则结束将存储在内存的短信息写入短信息数据库中;若否,则返回执行所述从所述短信息备份文件中读取部分短信息的步骤。3.根据权利要求2所述的方法,其特征在于,所述从所述短信息备份文件中读取部分短信息的步骤包括:读取位置变量的值,获得句柄位置;从所述句柄位置开始,从所述短信息备份文件中读取一段备份数据;在所述备份数据中识别短信息的结束标识符;以所述结束标识符为节点,将所述备份数据划分为数据片段,作为短信息;将所述备份数据的句柄位置写入所述位置变量。4.根据权利要求3所述的方法,其特征在于,所述从所述短信息备份文件中读取部分短信息的步骤还包括:从数据变量中提取上一次划分短信息时剩余的数据片段;将上一次剩余的数据片段拼接在本次第一条数据片段之前,获得完整的数据片段;和/或,当本次最后一条数据片段不具有结束标识符时,将本次最后一条数据片段存储至数据变量中。5.根据权利要求3所述的方法,其特征在于,所述从所述短信息备份文件中读取部分短信息的步骤还包括:记录所述备份数据的长度;当所述长度为零时,结束从所述短信息备份文件中读取部分短信息。6.根据权利要求2或3或4或5所述的方法,其特征在于,所述将所述部分短信息存储至内存的步骤包括:在内存中设置一数组;将所述部分短信息写入所述数组中。7.根据...

【专利技术属性】
技术研发人员:张博李和意张艳凤杜文娟
申请(专利权)人:青岛海信移动通信技术股份有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1