移动终端处理新收短信的方法及移动终端的制作方法

文档序号:7987574阅读:157来源:国知局
移动终端处理新收短信的方法及移动终端的制作方法
【专利摘要】本发明涉及通信领域,公开了一种移动终端处理新收短信的方法及移动终端。本发明中,移动终端在收到新短信时先获取该短信的SCTS,并根据获取的SCTS与终端当前系统时间的差值,和预设的时间差阀值的比较结果,判断系统时间是否异常。在系统时间异常的情况下,采用SCTS作为“收到时间”保存该短信,使该短信的排序时不至于和当前正常时间相差很多,方便用户及时在短信列表中找到。进一步地,当移动终端检测到系统时间更正后,根据计时器当前的计时时间与更正后的系统时间,更新所述新短信的收到时间,使得在系统时间异常时收到的短信,最终可以按照正确的终端收到时间进行排序和显示。
【专利说明】移动终端处理新收短信的方法及移动终端
【技术领域】
[0001]本发明涉及通信领域,特别涉及移动终端处理新短信的技术。
【背景技术】
[0002]随着移动通信技术和多媒体技术的快速发展,使得智能终端快速普及。以聊天会话式短信为代表的短信应用变得更加丰富多彩。而且,随着智能终端上存储空间的扩大和多核处理器的增强,终端用户无需时刻删除收到的短信来释放存储空间,用户通常会将收到短信一直保留在终端中,在开机时由短信引擎快速加载到短信应用界面的列表中。
[0003]目前,现有技术下收到短信的处理流程如图1所示。移动终端开机后,短信引擎监控是否收到新短信。在收到新短信后,短信引擎解析新收到短信的协议数据单元(ProtocolData Unit,简称“PDU”),取得终端系统时间,然后,将取得的系统时间作为短信的“收到时间”,保存处理后的短信至终端存储系统。接着,短信引擎根据”收到时间“排序短信列表并呈现给用户,最后,结束一条短信的监控、解析、保存和显示功能。
[0004]然而,由于产品的竞争和制造成本的压缩,市面上的大多数移动终端在没有电池或者外部电源供电时,去掉了纽扣电池供电,而采用大容量电容供电的低成本方式。在移动终端刚出厂时,电容供电可以提供十几秒甚至几十秒的时间保证系统的供电,但是随着电容充放电次数的增多,电容可持续放电的时间快速下降,一般情况下只能持续几秒钟的供电时间。而当终端用户在换电池时,如果动作稍慢,电容储存的电量耗尽,将造成终端系统断电,导致系统时间还原为出厂时的默认时间,或者用户的误操作也会导致系统时间错乱。
[0005]绝大部分智能的移动终端都支持“网络时间同步”功能,但是大部分智能的移动终端在“网络时间同步”上采用国外运营商常用的网络标识和时区(Network Identity andTime Zone,简称“NITZ”)协议。而国内运营商采用的是简单网络时间协议(Simple NetworkTime Protocol,简称“SNTP”),这就导致非针对国内运营商的智能终端在开机时无法实时完成网络时间同步,只能依靠终端用户手动设置时间,即使部分针对国内运营商的终端采用SNTP来同步时间,也需要在终端开机注册到网络一段时间后才能完成同步。
[0006]因此,如果换电池关机后刚开机就收到短信(别人刚刚发送的或者运营商短信中心存储的),终端用户开机后被还原为出厂时默认的时间,或者由其他方式造成的系统时间错误,此时还没来得及设置系统时间或者网络时间同步还没完成,那么系统的短信应用程序就会按照此时的系统时间来保存和排序刚收到的短信(现在终端上的短信应用程序为了遵循终端用户设定的时间,都采用收到短信时终端系统时间作为“收到时间”,而不得采用运营商服务器时间作为“收到时间”)。而由于短信收到后被短信引擎保存在移动终端中,终端用户无法修改短信的各种信息,包括“收到时间”,那么该短信就一直排序在短信列表的最后,因此,如果刚刚收到的这条短信被按照终端出厂默认时间来排序,就会被排在短信列表的最后。那么终端用户要翻遍整个短信列表才能找到刚刚收到的未读短信;或者如果短信引擎采用聊天会话式短信列表,那么该会话被排在短信列表的最后,且该新短信被排在该会话中最后面的位置,造成用户要先翻遍整个短信列表找到该会话,然后移动到该会话最后的地方才能找到该未读短信。
[0007]特别是现在的智能终端,由于短信存储条数只受到终端存储器的容量的限制,可以存储几千甚至上万条短信,因此一旦发生终端在系统时间因各种原因异常后收到短信的情况,该条短信将在短信界面列表中排序错乱,造成终端用户查找时非常困难,如果终端用户经常翻看该条短信,就会造成每次都要翻遍短信列表,非常不便,影响了用户体验。

【发明内容】

[0008]本发明的目的在于提供一种移动终端处理新收短信的方法及移动终端,使得即使发生系统时间异常的情况,移动终端收到的新短信呈现在短信界面列表上的排序位置也不会与正常情况下呈现在短信界面列表上的排序位置相差太大,方便了用户对短信的查看,提闻了用户体验。
[0009]为解决上述技术问题,本发明提供了一种移动终端处理新收短信的方法,包含以下步骤:
[0010]移动终端在收到新短信后,获取该新短信的消息中心收到消息时的时间戳SCTS ;
[0011]所述移动终端根据获取的所述SCTS与当前的系统时间的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常;
[0012]如果所述移动终端判定当前的系统时间异常,则将所述SCTS作为所述新短信的收到时间;
[0013]所述移动终端根据所述新短信的收到时间,将该新短信加载到短信界面列表上。
[0014]本发明还提供了一种移动终端,包含:
[0015]接收模块,用于接收新短信;
[0016]SCTS获取模块,用于在所述接收模块收到新短信后,获取该新短信的消息中心收到消息时的时间戳SCTS ;
[0017]异常判断模块,用于根据所述SCTS获取模块获取的所述SCTS与当前的系统时间的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常;
[0018]收到时间设置模块,用于在所述异常判断模块判定当前的系统时间异常时,将所述SCTS作为所述新短信的收到时间;
[0019]短信加载模块,用于根据所述新短信的收到时间,将该新短信加载到短信界面列表上。
[0020]本发明实施方式相对于现有技术而言,移动终端在收到新短信时先获取该短信的消息中心收到消息时的时间戳(Service Center Time Stamp,简称“SCTS”),并根据获取的SCTS与终端当前系统时间的差值,和预设的时间差阀值的比较结果,判断系统时间是否异常。在系统时间异常的情况下,采用SCTS作为“收到时间”保存该短信,使该短信的排序时不至于和当前正常时间相差很多,方便用户及时在短信列表中找到。
[0021]另外,移动终端在判定当前的系统时间异常时,为新短信启动一个计时器。当移动终端检测到系统时间更正后,根据计时器当前的计时时间与更正后的系统时间,更新所述新短信的收到时间;其中,所述新短信更新后的收到时间为当前的系统时间减去所述计时时间。移动终端根据所述新短信更新后的收到时间,将该新短信重新加载到短信界面列表上。使得在系统时间异常时收到的短信,最终可以按照正确的终端收到时间进行排序和显/Jn ο
[0022]另外,移动终端在完成一条新短信的收到时间的更新后,消除该新短信所对应的计时器,以释放系统资源。
[0023]另外,移动终端在判定当前的系统时间异常时,为所述新短信设置一个标识该新短信收到时间异常的标志位。通过为“收到时间”异常的短信设置异常标志位,可方便用户后续查看所有的“收到时间”异常的短信。
[0024]另外,如果在所述移动终端检测到系统时间更正后,对异常短信链表中的每一条短信进行收到时间更新和加载的过程中,所述移动终端接收到用户需查看短信界面的指令,该移动终端通过显示进度条的方式提示用户正在处理异常短信,以进一步提高用户体验。
【专利附图】

【附图说明】
[0025]图1是根据本发明现有技术中的移动终端收到短信后的处理流程图;
[0026]图2是根据本发明第一实施方式的移动终端处理新收短信的方法流程图;
[0027]图3是根据本发明第二实施方式中移动终端收到短信后的处理流程图;
[0028]图4是根据本发明第二实施方式中在检测到系统时间更正后,移动终端对系统时间异常时收到的短信的时间校准流程图;
[0029]图5是根据本发明第三实施方式的移动终端结构示意图。
【具体实施方式】
[0030]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
[0031]本发明的第一实施方式涉及一种移动终端处理新收短信的方法。在本实施方式中,移动终端开机后,通过短信引擎开始监视是否有新短信,在收到新短信后,通过判断移动终端的系统时间是否异常来处理新短信的“收到时间”,具体流程如图2所示。
[0032]在步骤201中,移动终端接收新短信,并在接收到新短信后,进入步骤202。
[0033]在步骤202中,移动终端解析该新短信的H)U。具体地说,移动终端解析短信的协议数据单元(Protocol Data Unit,简称“PDU”)。比如说,从协议栈(如TD或者WCDMA)上报上来的短信是以PDU格式组包的16进制数据,由短信引擎按照PDU协议来解析PDU协议。本步骤属于本领域的公知常识,在此不再赘述。
[0034]接着,在步骤203中,移动终端判断对短信的PDU解析是否成功。由于在现有技术中,成功解析PDU包是处理一条短信的基础,需要成功解析后才能进行后续流程。因此,如果PDU解析失败,则进入步骤204,直接丢弃该短信;如果PDU解析成功,则进入步骤205。
[0035]在步骤205中,移动终端从PDU数据中取得该新短信的SCTS。具体地说,移动终端在成功解析PDU数据后,从PDU数据中取得该新短信的SCTS。SCTS由7个字节组成,由标准的SMS (短信通群发系统)协议规定,SCTS在PDU格式中的7个字节,根据现有技术从PDU数据中直接提取即可,在此不再赘述。在本步骤中,移动终端将取得的SCTS值的BCD码(二-十进制代码)转换成字符串形式,例如取得的SCTS值是01112081603023,转换后的值是 11-10-218:63’,23 时区。
[0036]接着,在步骤206中,移动终端获取当前的系统时间。
[0037]接着,在步骤207中,移动终端计算取得的SCTS与当前的系统时间的时间差。在本步骤中,采用公知的时间计算算法取得2个时间之间的差值,以秒为单位。
[0038]接着,在步骤208中,移动终端判断当前的系统时间是否异常。具体地说,移动终端根据在步骤207中计算的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常。其中,时间差阀值由用户设定,该时间差阀值以小时为单位。如果计算的时间差大于该时间差阀值,则判定当前的系统时间异常,进入步骤209;如果小于该时间差阀值,则判定当前的系统时间正常,进入步骤210。
[0039]在步骤209中,移动终端将取得的SCTS作为收到的新短信的收到时间。比如说,在本实施方式中,将时间差阀值设置为24小时,同时允许用户在界面上设置。比如用户设置为10小时,那么SCTS与系统时间的差值大于10小时时即认为终端系统时间异常,进入本步骤,采用SCTS作为临时的短信“收到时间”,用于后续的处理。
[0040]在步骤210中,由于移动终端判定当前的系统时间正常,因此在本步骤中,移动终端仍将收到新短信时的系统时间,作为该短信的收到时间,与现有技术相同。本领域技术人员可以理解,系统时间由用户设定,所以短信引擎需要按照用户设定的系统时间对短信列表进行排序,而不是按照SCTS排序,在现有技术中,为充分尊重用户的时间习惯,终端都采用这种处理方式对短信排序。因此,在判定终端的系统时间正常后,短信引擎采用系统时间作为短信的“收到时间”按照自己的格式组包。
[0041]接着,在步骤211中,移动终端根据新短信的收到时间,将该新短信加载到短信界面列表上。本步骤与现有技术相同,在此不再赘述。
[0042]图2所示的流程为单条短信的处理流程,对于多条短信,可以采用循环的方式按照该流程处理。
[0043]由于在本实施方式中,在系统时间异常的情况下,采用SCTS作为“收到时间”保存该短信,使该短信的排序时不至于和当前正常时间相差很多,方便用户及时在短信列表中找到。也就是说,即使发生系统时间异常的情况,移动终端收到的新短信呈现在短信界面列表上的排序位置也不会与正常情况下呈现在短信界面列表上的排序位置相差太大,方便了用户对短信的查看,提高了用户体验。
[0044]本发明的第二实施方式涉及一种移动终端处理新收短信的方法。第二实施方式在第一实施方的基础上作了进一步改进,主要改进之处在于:在本发明第二实施方式中,移动终端还将对在系统时间异常时收到的短信进行收到时间的校准,即短信引擎将在终端系统时间异常时收到的短信根据时间差阀值判断后分为正常短信和异常短信。正常短信保存在正常短信链表中,异常短信保存在异常短信链表中。短信引擎检测到系统时间被更正后,依次处理异常短信链表中的每条短信,具体为将当前的系统时间减去该短信的计时时间(在系统时间异常时收到该短信的时刻至当前时刻的时间),作为该短信更新后的收到时间,并根据更新后的收到时间,将该新短信重新加载到短信界面列表上。
[0045]具体流程如图3、图4所示。其中,图3为移动终端收到短信后的处理流程图;图4为在检测到系统时间更正后,移动终端对系统时间异常时收到的短信的时间校准流程图。
[0046]步骤301至步骤308与步骤201至步骤208相同,在此不再赘述。
[0047]步骤309中,移动终端将SCTS作为该新短信的收到时间,并且,为该新短信启动一个计时器,以秒为单位实时统计该短信收到了多长时间。在本实施方式中,计时器可以软件计时器,移动终端通过读取移动终端硬件上的实时时钟模块的值,对收到该新短信后的时间进行计时。也就是说,为该新短信创建一个计时器,记录该短信收到了多长时间(直到系统时间正常后停止该计时器),为每个收到时间异常的短信分别创建的一个单独的计时器,可以采用系统的软件计时器而非采用硬件计时器模块实现。
[0048]接着,在步骤310中,移动终端为该新短信设置一个标识该新短信收到时间异常的标志位,以标记该短信为时间异常短信,并将该短信保存至异常短信链表中,如短信引擎将按照自己的格式组包的短信,以SCTS作为收到时间保存至”正常短信链表”中。由于在终端的短信引擎中,每条短信都采用结构体保存,因此,可以采用结构体中包含的一个BOOL型标志位来标识该短信是否是“收到时间”异常,以供终端用户后续查询“所有收到”时间异常的短信。比如说,当终端用户后续希望查看当初所有的“收到时间”异常的短信时,短信引擎只需要根据链表数据结构中的异常标志位过滤所有的短信,然后呈现给用户即可。
[0049]如果在步骤308中判定系统时间正常,则进入步骤311。在步骤311中,移动终端仍将收到新短信时的系统时间,作为该短信的收到时间,与步骤210相同。
[0050]接着,在步骤312中,移动终端保存该短信到正常短信链表中。
[0051]接着,在步骤313中,移动终端根据新短信的收到时间,将该新短信加载到短信界面列表上。也就是说,在将收到的新短信保存到“正常短信链表”或“异常短信链表”中后,在本步骤中按照插入排序法等算法组成短信应用程序中的短信列表界面。
[0052]也就是说,在本实施方式中,终端开机后短信引擎开始监视是否有新短信,收到新短信后,通过解析PDU取得SCTS值。然后计算SCTS与系统时间的差,当时间差超过用户事先设定的阀值时,认为终端的系统时间异常,此时采用SCTS作为“收到时间”保存该短信至“异常短信链表”中并对该短信创建计时器以秒为单位记录收到该短信以来的时长。对于系统时间正常时收到的短信,直接保存至“正常短信链表”。当处理完短信的“收到时间”后,短信引擎对界面上的短信列表重新排序后呈现给终端用户。
[0053]另外,在本实施方式中,当移动终端检测到系统时间被更正后,还需逐一处理“收到时间”异常的短信,计算出相对于终端的系统时间更正后的短信“收到时间”。然后将该异常短信从“异常短信链表”删除,插入到“正常短信链表”,最后重新加载短信引擎界面的列表。插入到“异常短信链表”中的短信,在移动终端检测到系统时间更正后,进行的后续处理如图4所示。其中,移动终端对系统时间更正的检测,包括对用户主动修改系统时间的检测和对因网络时间同步修改系统时间的检测。
[0054]本领域技术人员可以理解,在任何终端的操作系统中,调整系统时间最终都是调整实时时钟(Real Time Clock,简称“RTC”)模块的时间,通过修改RTC模块的调整时间接口,当RTC模块时间被修改后,通过上报消息或者回调函数的方式通知短信引擎,告知终端系统时间已被修改。另外,在任何终端系统中,修改系统时间可能是用户主动修改,或者启动了“网络时间同步”功能后系统根据网络时间自行修改,以及其他方式,所以采用监控RTC模块的时间调整后,即可监控所有的修改系统时间的行为。[0055]下面结合图4,对移动终端在检测到系统时间更正后,对“收到时间”异常的短信的后续处理进行具体说明。
[0056]当移动终端检测到用户主动修改了系统时间,或系统因网络时间同步而修改了系统时间后,进入步骤401,移动终端获取异常短信链表。
[0057]接着,在步骤402中,移动终端根据“异常短信链表”的结点,查找到该结点所指向的保存在“异常短信链表”中的短信。在第一次进入本步骤时,该结点为“异常短信链表”头结点。
[0058]接着,在步骤403中,移动终端根据查找到的短信,获取到该短信相应的计时器,取得该短信的计时时间,即该短信已收到了多长时间。具体地说,在本步骤中取得该短信的计时器的值,即该短信在收到以来经过的时间,以秒为单位,在实现上采用4字节的数据结构表示。例如采用ΠΝΤ32,理论上支持任何可预见的时间跨度。
[0059]接着,在步骤404中,移动终端根据计时器当前的计时时间与更正后的系统时间,更新查找到的短信的收到时间,并且,移动终端在完成一条新短信的收到时间的更新后,消除该新短信所对应的计时器,停止计时器。其中,该短信更新后的收到时间为当前的系统时间减去计时时间。
[0060]比如说,移动终端在收到新短信时,SCTS是2012-9-1412:05:08,由于当时终端由于更换电池导致系统时间变成2000-1 -100:00:05,则认为该短信的“收到时间”异常。此时创建并启动计时器,且临时把该短信的“收到时间”修改为SCTS并保存和参与排序,防止该短信由于时间异常引起排序出现非常大的偏差。而当终端系统时间更正后,例如更正为2012-9-1412:15:03,此时取得该短信的计时器数值,即该短信收到后经过的时间是8分钟2秒。所以,计算出该短信相对于用户终端的真正收到时间为2012-9-1412:07:01.(12:15:03-8’02 ”=12:07:01)。把该短信的“收到时间”改成相对于用户终端系统的时间并保存,以方便与其他正常短信排序。在将该短信的“收到时间”改成相对于用户终端系统的时间并保存后,通过消除该新短信所对应的计时器,如停止计时器,并且销毁该软件计时器,以释放系统资源。
[0061]接着,在步骤405中,移动终端将收到时间更新后的短信,从异常短信链表中删除,避免对系统时间异常时收到的短信的重复处理,并将该短信加入到正常短信链表中。其中,将该短信加入到正常短信链表中的插入算法,可采用插入排序法等算法按照“收到时间”排序。使得在后续加载短信到短信界面列表时,可直接按顺序读取链表并加载即可,不需要再次排序,以免影响加载界面列表的时间。
[0062]值得一提的是,该短信的“收到时间异常标志位”可仍是置为TRUE (标识该新短信的收到时间异常),以方便后续终端用户查看当初所有“收到时间”异常的短信。
[0063]接着,在步骤406中,移动终端判断是否已完成异常短信链表中所有短信的收到时间的更新。即判断异常短信链表中是否还有其他待处理的短信,如果还存在,则进入步骤407 ;如果不存在,则直接进入步骤408。
[0064]在步骤407中,移动终端将当前的异常短信链表的结点,向后移一位,使得后移一位的结点指向异常短信链表中的下一条待处理短信。并在步骤407后回到步骤402。
[0065]在步骤408中,在已经处理完整个“异常短信链表”后,返回短信应用程序界面,根据链表重新把短信加载到界面上的列表中。由于此时异常短信链表中的短信都处理完成且根据“收到时间”插入到“正常短信链表”中,所以在此步骤中,只需要把“正常短信链表”中的短信直接加载在界面列表即可,不再需要执行排序过程,以求尽快完成界面上的加载过程获得更好的用户体验。
[0066]由于在本实施方式中,依次处理异常短信链表中的每条短信,通过每条短信的计时器和当前系统时间计算出该短信相对于该终端系统时间的“收到时间”,更正该短信的正确的“收到时间”后把该短信插入到“正常短信链表”中。在循环处理完“异常短信链表”中的所有收到时间异常的短信后,短信引擎在界面上重新加载短信列表呈现给用户,使得在系统时间异常时收到的短信,最终可以按照正确的终端收到时间进行排序和显示,进一步提闻了用户体验。
[0067]另外,需要说明的是,如果在移动终端检测到系统时间更正后,对异常短信链表中的每一条短信进行收到时间更新和加载的过程中,移动终端接收到用户需查看短信界面的指令,则该移动终端通过显示进度条的方式提示用户正在处理异常短信。也就是说,当短信引擎处理异常短信时经判断发现终端用户正在查看短信界面,则通过滚动条的方式提醒用户当前处理进度,把待处理条数和总数显示给用户。在具体实现时,可通过判断当前短信界面窗口是否被“激活”来判断当前短信界面是否处于前端,这是本领域普通技术人员公知的方法,这里不再赘述。
[0068]上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
[0069]本发明第三实施方式涉及一种移动终端,如图5所示,包含:
[0070]接收模块,用于接收新短信。
[0071]SCTS获取模块,用于在所述接收模块收到新短信后,获取该新短信的消息中心收到消息时的时间戳SCTS。
[0072]异常判断模块,用于根据所述SCTS获取模块获取的所述SCTS与当前的系统时间的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常。
[0073]收到时间设置模块,用于在所述异常判断模块判定当前的系统时间异常时,将所述SCTS作为所述新短信的收到时间。
[0074]短信加载模块,用于根据所述新短信的收到时间,将该新短信加载到短信界面列表上。
[0075]其中,时间差阀值可由用户设定,以小时为单位。
[0076]不难发现,本实施方式为与第一实施方式相对应的装置实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
[0077]值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单J Li ο
[0078]本发明第四实施方式涉及一种移动终端。第四实施方式在第三实施方式的基础上做了进一步改进,主要改进之处在于:在本发明第四实施方式中,移动终端还将对在系统时间异常时收到的短信进行收到时间的校准,使得在系统时间异常时收到的短信,最终可以按照正确的终端收到时间进行排序和显示。
[0079]具体地说,在本实施方式中,移动终端还包含:计时模块、系统时间检测模块和存储模块。
[0080]其中,计时模块用于在异常判断模块判定当前的系统时间异常时,为所述新短信启动一个计时器;系统时间检测模块用于检测所述移动终端是否更正了系统时间。系统时间检测模块对系统时间更正的检测,包括对用户主动修改系统时间的检测和对因网络时间同步修改系统时间的检测。收到时间设置模块还用于在所述系统时间检测模块检测到系统时间更正后,根据所述计时器当前的计时时间与所述更正后的系统时间,更新所述新短信的收到时间;其中,所述新短信更新后的收到时间为当前的系统时间减去所述计时时间。短信加载模块还用于在所述收到时间设置模块更新了所述新短信的收到时间后,将该新短信重新加载到短信界面列表上。
[0081]存储模块,用于在所述异常判断模块判定当前的系统时间异常时,将所述新短信保存至异常短信链表中。收到时间设置模块在更新所述新短信的收到时间时,为保存在所述异常短信链表中的每一条短信更新收到时间,并且,该收到时间设置模块还用于在完成每一条短信的所述收到时间的更新后,将该新短信从所述异常短信链表中删除。短信加载模块在将新短信重新加载到短信界面列表上时,将所述异常短信链表中的每一条收到时间更新后的短信,加载到短信界面列表上。
[0082]在本实施方式中,计时器可为软件计时器,计时模块通过读取移动终端硬件上的实时时钟模块的值,对移动终端收到该新短信后的时间进行计时。该计时模块还用于在所述收到时间设置模块完成一条新短信的收到时间的更新后,消除该新短信所对应的计时器,并且,在异常判断模块判定当前的系统时间异常时,为所述新短信设置一个标识该新短信收到时间异常的标志位。
[0083]由于第二实施方式与本实施方式相互对应,因此本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,在第二实施方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
[0084]本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
【权利要求】
1.一种移动终端处理新收短信的方法,其特征在于,包含以下步骤: 移动终端在收到新短信后,获取该新短信的消息中心收到消息时的时间戳SCTS ; 所述移动终端根据获取的所述SCTS与当前的系统时间的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常; 如果所述移动终端判定当前的系统时间异常,则将所述SCTS作为所述新短信的收到时间; 所述移动终端根据所述新短信的收到时间,将该新短信加载到短信界面列表上。
2.根据权利要求1所述的移动终端处理新收短信的方法,其特征在于,还包含以下步骤: 所述移动终端在判定当前的系统时间异常时,为所述新短信启动一个计时器; 当所述移动终端检测到系统时间更正后,根据所述计时器当前的计时时间与所述更正后的系统时间,更新所述新短信的收到时间;其中,所述新短信更新后的收到时间为当前的系统时间减去所述计时时间; 所述移动终端根据所述新短信更新后的收到时间,将该新短信重新加载到短信界面列表上。
3.根据权利要求2所述的移动终端处理新收短信的方法,其特征在于,还包含以下步骤:所述移动终端在判定当前的系统时间`异常时,将所述新短信保存至异常短信链表中;当所述移动终端检测到系统时间更正后,根据所述计时器当前的计时时间与所述更正后的系统时间,更新所述新短信的收到时间的步骤中,为保存在所述异常短信链表中的每一条短信更新收到时间,并在完成每一条短信的所述收到时间的更新后,将该新短信从所述异常短信链表中删除; 在所述移动终端根据所述新短信更新后的收到时间,将该新短信重新加载到短信界面列表上的步骤中,包含以下子步骤: 将所述异常短信链表中的每一条收到时间更新后的短信,加载到短信界面列表上。
4.根据权利要求2所述的移动终端处理新收短信的方法,其特征在于, 所述计时器为软件计时器; 在所述移动终端为所述新短信启动一个计时器的步骤中,所述移动终端通过读取移动终端硬件上的实时时钟模块的值,对所述移动终端收到该新短信后的时间进行计时; 在所述更新所述新短信的收到时间的步骤中,所述移动终端在完成一条新短信的收到时间的更新后,消除该新短信所对应的计时器。
5.根据权利要求2所述的移动终端处理新收短信的方法,其特征在于, 所述系统时间更正的检测,包括对用户主动修改系统时间的检测和对因网络时间同步修改系统时间的检测。
6.根据权利要求1所述的移动终端处理新收短信的方法,其特征在于,还包含以下步骤: 所述移动终端在判定当前的系统时间异常时,为所述新短信设置一个标识该新短信收到时间异常的标志位。
7.根据权利要求1至6中任一项所述的移动终端处理新收短信的方法,其特征在于,所述时间差阀值由用户设定,该时间差阀值以小时为单位。
8.根据权利要求3至6中任一项所述的移动终端处理新收短信的方法,其特征在于,还包含以下步骤: 如果在所述移动终端检测到系统时间更正后,对异常短信链表中的每一条短信进行收到时间更新和加载的过程中,所述移动终端接收到用户需查看短信界面的指令,则该移动终端通过显示进度条的方式提示用户正在处理异常短信。
9.一种移动终端,其特征在于,包含: 接收模块,用于接收新短信; SCTS获取模块,用于在所述接收模块收到新短信后,获取该新短信的消息中心收到消息时的时间戳SCTS ; 异常判断模块,用于根据所述SCTS获取模块获取的所述SCTS与当前的系统时间的时间差,是否大于预设的时间差阀值,判断当前的系统时间是否异常; 收到时间设置模块,用于在所述异常判断模块判定当前的系统时间异常时,将所述SCTS作为所述新短信的收到时间; 短信加载模块,用于根据所述新短信的收到时间,将该新短信加载到短信界面列表上。
10.根据权利要求9所述的移动终端,其特征在于,还包含: 计时模块,用于在所述异常判断模块判定当前的系统时间异常时,为所述新短信启动一个计时器;` 系统时间检测模块,用于检测所述移动终端是否更正了系统时间; 所述收到时间设置模块还用于在所述系统时间检测模块检测到系统时间更正后,根据所述计时器当前的计时时间与所述更正后的系统时间,更新所述新短信的收到时间;其中,所述新短信更新后的收到时间为当前的系统时间减去所述计时时间; 所述短信加载模块还用于在所述收到时间设置模块更新了所述新短信的收到时间后,将该新短信重新加载到短信界面列表上。
11.根据权利要求10所述的移动终端,其特征在于,还包含: 存储模块,用于在所述异常判断模块判定当前的系统时间异常时,将所述新短信保存至异常短信链表中; 所述收到时间设置模块在更新所述新短信的收到时间时,为保存在所述异常短信链表中的每一条短信更新收到时间,并且,该收到时间设置模块还用于在完成每一条短信的所述收到时间的更新后,将该新短信从所述异常短信链表中删除; 所述短信加载模块在将新短信重新加载到短信界面列表上时,将所述异常短信链表中的每一条收到时间更新后的短信,加载到短信界面列表上。
12.根据权利要求10所述的移动终端,其特征在于, 所述计时器为软件计时器; 所述计时模块通过读取移动终端硬件上的实时时钟模块的值,对所述移动终端收到该新短信后的时间进行计时; 所述计时模块还用于在所述收到时间设置模块完成一条新短信的收到时间的更新后,消除该新短信所对应的计时器。
13.根据权利要求10所述的移动终端,其特征在于,所述系统时间检测模块对系统时间更正的检测,包括对用户主动修改系统时间的检测和对因网络时间同步修改系统时间的检测。
14.根据权利要求9所述的移动终端,其特征在于, 所述计时模块还用于在所述异常判断模块判定当前的系统时间异常时,为所述新短信设置一个标识该新短信收到时间异常的标志位。
15.根据权利要求9至14中任一项所述的移动终端,其特征在于, 所述时间差 阀值由用户设定,该时间差阀值以小时为单位。
【文档编号】H04W4/14GK103874040SQ201210553040
【公开日】2014年6月18日 申请日期:2012年12月18日 优先权日:2012年12月18日
【发明者】段昌志 申请人:联芯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1