智能终端的唤醒控制方法及装置
技术领域
本发明涉及通信技术,尤其涉及一种智能终端的唤醒控制方法及装置。
背景技术
随着智能终端的普及,消费者对智能终端的需求越来越大,并且对智能终端也提出了越来越高的要求;以智能终端中的智能手机为例,用户通常会要求智能手机上的应用程序例如移动QQ,要永远在线,以方便用户随时接收消息。而应用程序如果要永远在线,则需要定时与网络服务器交互;在智能手机的使用过程中,手机会定期处于休眠状态以节省功耗,为了满足上述的定时与网络服务器交互的需要,需要先将手机系统从休眠状态唤醒,手机才能与网络服务器交互。
具体实施中,智能手机上的每个应用程序通常都会具有定时器(Alarm)设置的功能,应用程序会将定时器设置指示(包括定时器的设置时间)发送至智能手机上的定时器管理服务单元(Alarm Manager Service),该定时器管理服务单元会根据该指示设置定时器,并在定时器指示的时间将智能手机从休眠状态唤醒;并且,每个应用程序分别有各自的定时器,定时器管理服务单元是分别响应各个应用程序的定时器设置指示进行手机唤醒的。但是,由于智能手机上设置的应用程序数量较多,每个应用程序为了定时与网络服务器交互,也都会不断设置定时器,导致智能手机的频繁唤醒,而唤醒对手机的功耗消耗较大,从而使得智能手机的待机时间降低。
发明内容
本发明提供一种智能终端的唤醒控制方法及装置,以降低智能终端的功耗。
本发明的第一方面是提供一种智能终端的唤醒控制方法,包括:
接收智能终端的一个或一个以上的应用程序发送的至少两个定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第 一定时器唤醒时间;
将与所述至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,并在所述第二定时器唤醒时间唤醒所述智能终端。
结合第一方面,第一方面的第一种可能的实现方式中,所述调整控制信息是周期性设置的心跳时刻,所述周期性设置的心跳时刻包括相邻的第N个心跳时刻和第N+1个心跳时刻,所述第N+1个心跳时刻的时间晚于所述第N个心跳时刻,所述N为自然数;所述将多个所述第一定时器唤醒时间中的至少两个均延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,包括:当所述第N个心跳时刻和第N+1个心跳时刻之间存在至少两个所述第一定时器唤醒时间,将所述第N个心跳时刻和第N+1个心跳时刻之间的至少两个所述第一定时器唤醒时间的至少两个,均延迟至所述第N+1个心跳时刻,所述第N+1个心跳时刻是所述第二定时器唤醒时间。
结合第一方面的第一种可能的实现方式,第二种可能的实现方式中,所述心跳时刻的周期根据所述应用程序的最长容忍延迟时间设置。
结合第一方面,第三种可能的实现方式中,所述调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间;所述第二定时器唤醒时间是所述至少两个所述第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间,并且位于至少两个所述第一定时器唤醒时间中的其他第一定时器唤醒时间的最长容忍延迟时间的范围内。
结合第一方面的第三种可能的实现方式,第四种可能的实现方式中,将至少两个第一定时器唤醒时间中的至少两个延迟至第二定时器唤醒时间,包括:判断当前接收到的定时器设置指示对应的第一定时器唤醒时间是否在最长容忍延迟时间的范围内,所述最长容忍延迟时间包括分别与所述第一定时器唤醒时间之前的各其他第一定时器唤醒时间对应的最长容忍延迟时间;若判断结果为是,则将所述其他第一定时器唤醒时间均延迟至所述第一定时器唤醒时间,所述第一定时器唤醒时间为所述第二定时器唤醒时间;否则,确定所述其他第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间为所述第二定时器唤醒时间,将所述其他第一定时器唤醒时间均延迟至所述第二定时器唤醒时间。
结合第一方面,第五种可能的实现方式中,所述调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间;所述第二定时器唤醒时间是所述至少两个第一定时器唤醒时间分别对应的延迟后时间中的时间最早的一个,所述延迟后时间是所述第一定时器唤醒时间延迟对应的最长容忍延迟时间后得到。
结合第一方面,第一方面的第一种可能的实现方式至第一方面的第五种可能的实现方式中的任意一种实现方式,第六种可能的实现方式中将所述第一定时器唤醒时间延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,包括:将与所述至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,修改为根据预设的调整控制信息确定的第二定时器唤醒时间。
本发明的第二方面是提供一种智能终端的唤醒控制方法,包括:
接收智能终端的一个应用程序发送的定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间,所述第一定时器唤醒时间与上一次接收的第一定时器唤醒时间间隔第一时间;
将所述第一定时器唤醒时间延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是周期性设置的心跳时刻中的位于所述第一定时器唤醒时间之后的最早的心跳时刻,且所述心跳时刻的设置周期是第二时间,所述第二时间长于所述第一时间;
在所述第二定时器唤醒时间唤醒所述智能终端。
本发明的第三方面是提供一种智能终端的唤醒控制装置,包括:
指示接收单元,用于接收智能终端的一个或一个以上的应用程序发送的至少两个定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间;
唤醒控制单元,用于将与至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,并在所述第二定时器唤醒时间唤醒所述智能终端。
结合第一三方面,第三方面的第一种可能的实现方式中,所述唤醒控制单元包括:信息存储子单元,用于存储预设的调整控制信息,所述调整控制信息是周期性设置的心跳时刻,所述周期性设置的心跳时刻包括相邻的第N 个心跳时刻和第N+1个心跳时刻,所述第N+1个心跳时刻的时间晚于所述第N个心跳时刻,所述N为自然数;延迟处理子单元,用于将所述第N个心跳时刻和第N+1个心跳时刻之间的至少两个所述第一定时器唤醒时间中的至少两个,均延迟至所述第N+1个心跳时刻,所述第N+1个心跳时刻是所述第二定时器唤醒时间;所述第N个心跳时刻和第N+1个心跳时刻之间存在至少两个所述第一定时器唤醒时间;唤醒触发子单元,用于控制在所述第二定时器唤醒时间唤醒所述智能终端。
结合第三方面,第三方面的第二种可能的实现方式中,所述唤醒控制单元包括:信息存储子单元,用于存储预设的调整控制信息,所述调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间;延迟处理子单元,用于将至少两个所述第一定时器唤醒时间中的至少两个延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是至少两个所述第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间,并且位于至少两个所述第一定时器唤醒时间中的其他第一定时器唤醒时间的最长容忍延迟时间的范围内;唤醒触发子单元,用于在所述第二定时器唤醒时间唤醒所述智能终端。
结合第三方面的第二种可能的实现方式中,第三种可能的实现方式中,所述延迟处理子单元包括:容忍判断子单元,用于判断当前接收到的定时器设置指示对应的第一定时器唤醒时间是否在最长容忍延迟时间的范围内,所述最长容忍延迟时间包括分别与所述第一定时器唤醒时间之前的各其他第一定时器唤醒时间对应的最长容忍延迟时间;延迟确定子单元,用于在判断结果为是时,将所述其他第一定时器唤醒时间均延迟至所述第一定时器唤醒时间,所述第一定时器唤醒时间为所述第二定时器唤醒时间;否则,确定所述其他第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间为所述第二定时器唤醒时间,将所述其他第一定时器唤醒时间均延迟至所述第二定时器唤醒时间;所述其他第一定时器唤醒时间为至少两个所述第一定时器唤醒时间。
结合第三方面,第四种可能的实现方式中,所述唤醒控制单元包括:信息存储子单元,用于存储预设的调整控制信息,所述调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间;延迟处理子单元,用于将至少两个所述第一定时器唤醒时间中的至少两个延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是所述至少两个第一定时器唤醒时间分别对应的延迟后时 间中的时间最早的一个,所述延迟后时间是所述第一定时器唤醒时间延迟对应的最长容忍延迟时间后得到;唤醒触发子单元,用于在所述第二定时器唤醒时间唤醒所述智能终端。
结合第三方面,第三方面的第一种可能的实现方式至第三方面的第四种可能的实现方式中的任意一种实现方式,第五种可能的实现方式中,所述唤醒控制单元,具体用于将与所述至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,修改为根据预设的调整控制信息确定的第二定时器唤醒时间。
本发明的第四方面是提供一种智能终端的唤醒控制装置,包括:
指示接收单元,用于接收智能终端的一个应用程序发送的定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间,所述第一定时器唤醒时间与上一次接收的第一定时器唤醒时间间隔第一时间;
唤醒控制单元,用于将所述第一定时器唤醒时间延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是周期性设置的心跳时刻中的位于所述第一定时器唤醒时间之后的最早的心跳时刻,且所述心跳时刻的设置周期是第二时间,所述第二时间长于所述第一时间;并在所述第二定时器唤醒时间唤醒所述智能终端。
本发明提供的智能终端的唤醒控制方法及装置的技术效果是:通过将应用程序确定的多个第一定时器唤醒时间均延迟至第二定时器唤醒时间,仅在第二定时器唤醒时间唤醒智能终端,从而相对于现有技术的在多个第一定时器唤醒时间均唤醒智能终端,显著减少了智能终端的唤醒次数,降低了智能终端的功耗。
附图说明
图1为本发明智能终端的唤醒控制方法实施例的应用系统架构图;
图2为本发明智能终端的唤醒控制方法一实施例的流程示意图;
图3为本发明智能终端的唤醒控制方法另一实施例的流程示意图;
图4为本发明智能终端的唤醒控制方法另一实施例中的定时器初始时序图;
图5为本发明智能终端的唤醒控制方法另一实施例中的心跳时刻设置示 意图;
图6为本发明智能终端的唤醒控制方法另一实施例中的定时器唤醒时间合并示意图;
图7为本发明智能终端的唤醒控制方法另一实施例的流程示意图;
图8为本发明智能终端的唤醒控制方法又一实施例中的定时器唤醒时间合并示意图;
图9为本发明智能终端的唤醒控制方法实施例的电量消耗示意图一;
图10为本发明智能终端的唤醒控制方法实施例的电量消耗示意图二;
图11为本发明智能终端的唤醒控制装置一实施例的结构示意图;
图12为本发明智能终端的唤醒控制装置另一实施例的结构示意图;
图13为本发明智能终端的唤醒控制装置另一实施例的结构示意图;
图14为本发明智能终端的唤醒控制装置所应用的智能终端的结构示意图。
具体实施方式
为了对本发明实施例的智能终端的唤醒控制方法的说明更加清楚,首先提供该方法应用的系统架构;图1为本发明智能终端的唤醒控制方法实施例的应用系统架构图,如图1所示,智能终端内通常运行多个应用程序,例如应用程序1、应用程序2、应用程序3和应用程序4;所述的应用程序例如是移动QQ、腾讯微信等;还包括定时器管理服务单元AlarmManager Service、以及操作系统等;该智能终端还包括其他的常规结构,图1中对其他结构不再做说明。
其中,Alarm Manager Service是提供定时器管理服务的,具体是可以根据各应用程序的指示,在应用程序指示的定时器唤醒时间对处于休眠状态的智能终端进行唤醒,以使得智能终端能够去连接应用程序的网络服务器,满足应用程序与网络服务器的交互需求。所述的唤醒具体实施中可以是由Alarm Manager Service对操作系统进行设置触发。其中,定时器Alarm就类似于闹钟,所述的定时器超时时间类似于闹钟所设定的闹钟响的时刻,只要到了该定时器超时时间就表示定时器超时则执行操作系统的唤醒,为了更形象的表示在该定时器超时时间执行唤醒,本发明各实施例中将该定时器超时时间称 为定时器唤醒时间。
下面对本发明实施例的智能终端的唤醒控制方法进行详细描述,该方法是从Alarm Manager Service执行的角度进行描述的。
实施例一
图2为本发明智能终端的唤醒控制方法一实施例的流程示意图,该方法是AlarmManager Service执行,如图2所示,该方法可以包括:
201、接收智能终端的应用程序发送的至少两个定时器设置指示;
其中,智能终端上通常会运行多个应用程序,例如上述的应用程序1、应用程序2、应用程序3和应用程序4等;由于应用程序要定时的与网络服务器交互,以满足终端用户的在线的需求,所以各应用程序会不断的设置定时器Alarm,以在该Alarm规定的定时器唤醒时间将处于休眠状态的智能终端唤醒,去与网络服务器连接。
在具体实施中,应用程序设置Alarm是通过向Alarm Manager Service发送请求实现的,应用程序会向Alarm Manager Service发送定时器设置指示,该指示用于在特定的时间唤醒智能终端,该特定的时间即指的定时器唤醒时间。可以将该应用程序确定的时间称为第一定时器唤醒时间。需要说明的是,在本发明实施例中,第一定时器唤醒时间都是指的能够延迟的时间,比如,某个应用程序发送的定时器设置指示对应的时间不允许被延迟(可能是由该应用程序的工作特定决定的),则该时间将不称为第一定时器唤醒时间。
例如,应用程序可以在指示中携带定时器唤醒时间的具体时刻比如第5分20秒;Alarm Manager Service就会据此设置定时器唤醒时间,即设置Alarm在第5分20秒唤醒系统(假如系统处于休眠状态),并且连接服务器进行数据业务(如果应用程序有需要的话)。如果应用程序在设置Alarm的时候同时指示该定时器是周期性的,那么在该Alarm超时的时候即到达定时器唤醒时间时,Alarm Manager Service会自动设置下一个Alarm超时时间即定时器唤醒时间。就单个应用程序的某个定时器来说,定时器设置指示通常是逐个发送的,例如,在某个时刻向Alarm Manager Service发送指示,指示第一个Alarm的定时器唤醒时间;在第一个Alarm超时后,再向Alarm Manager Service发送指示,指示第二个Alarm的定时器唤醒时间;所以,Alarm Manager Service就是根据应用程序的指示逐个设置Alarm的。
本实施例中所述的应用程序发送的多个定时器设置指示,既可以是一个应用程序发送的多个定时器设置指示,也可以是一个以上的应用程序发送的多个定时器设置指示;通常情况下是多个应用程序分别发送的多个定时器设置指示;例如,应用程序1发送的指示1、应用程序2发送的指示2、应用程序3发送的指示3、以及应用程序4发送的指示4,该指示1~指示4即为所述的多个定时器设置指示。并且,所述的多个定时器设置指示的定时器唤醒时间通常是不同的;例如,指示1是指示在5分20秒超时,指示2是指示在6分30秒超时,指示3是指示在9分10秒超时等,具体的设置时间是由各应用程序自身确定的;即使所述的多个定时器设置指示的定时器唤醒时间中的部分唤醒时间相同,也仍然按照本实施例所述的唤醒控制方法执行处理。
202、根据预设的调整控制信息,将与至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,均延迟至第二定时器唤醒时间;
本实施例中,所述的至少两个所述第一定时器唤醒时间是与所述至少两个定时器设置指示分别对应的,每个定时器设置指示都指示一个第一定时器唤醒时间。AlarmManager Service可以将其接收到的至少两个定时器设置指示的第一定时器唤醒时间进行合并,比如可以将其均合并在某一个时刻,在该时刻定时器超时即执行唤醒;其中,具体可以是将该至少两个第一定时器唤醒时间中的至少两个均延迟唤醒,比如存在三个或三个以上的第一定时器唤醒时间,可以将其中的两个第一定时器唤醒时间延迟进行唤醒,也可以将两个以上的第一定时器唤醒时间延迟进行唤醒,或者将所有的第一定时器唤醒时间都延迟进行唤醒。
举例如下:指示1是指示在5分20秒超时,指示2是指示在6分30秒超时,指示3是指示在9分10秒超时,指示4是指示在10分05秒超时;则Alarm Manager Service可以将该指示1~指示4所设定的时间均向后延迟,Alarm Manager Service可能会确定在11分02秒超时,而在前述的指示1~指示4的指示时间将不再超时即不再唤醒;在11分02秒时唤醒智能终端,指示1~指示4分别对应的应用程序1~应用程序4都可以在该时刻运行并与各自的网络服务器交互,当这四个应用程序都交互完成后,再断开与网络服务器的连接。
其中,Alarm Manager Service是根据预设的调整控制信息进行上述的第一定时器唤醒时间的延迟的,延迟后的上述多个第一定时器唤醒时间进行合并的时间可以称为第二定时器唤醒时间;该第二定时器唤醒时间是根据调整控制信息确定的,例如,当调整控制信息是周期性设置的多个心跳时刻时,该第二定时器唤醒时间可能是其中一个心跳时刻;当调整控制信息是某个应用程序的最长容忍延迟时间时,该第二定时器唤醒时间可能是在该最长容忍延迟时间范围内的某个第一定时器唤醒时间。具体的调整可以参见实施例二和实施例三所述;该最长容忍延迟时间是不影响应用程序的正常运行下所能够容忍的最长延迟时间。
其中,在本发明的实施例中,将第一定时器唤醒时间延迟至第二定时器唤醒时间的方式,是以将第一定时器唤醒时间修改为第二定时器唤醒时间为例进行说明,但具体实施中也可以有其他的延迟方式,比如,对第一定时器唤醒时间不修改但是不执行唤醒,在第二定时器唤醒时间再唤醒。
203、在所述第二定时器唤醒时间唤醒所述智能终端;
其中,Alarm Manager Service在确定所述的第二定时器唤醒时间唤醒智能终端。
在如下的实施例二和实施例三中,分别举例说明了两种可行的定时器唤醒时间的延迟方式,并且,是以采用Android系统的智能手机为例;但是,本发明实施例的方法并不局限于此,例如还可以应用于其他系统的智能平板电脑、超级本等类似的智能终端上,同样可以达到降低终端功耗的效果。
实施例二
图3为本发明智能终端的唤醒控制方法另一实施例的流程示意图,本实施例中的调整控制信息是周期性设置的心跳时刻,即具有固定时间间隔的周期心跳时刻,是根据心跳时刻确定第二定时器唤醒时间的。比如,心跳时刻包括相邻的第N个心跳时刻和第N+1个心跳时刻,第N+1个心跳时刻的时间晚于第N个心跳时刻,N为自然数;可以将第N个心跳时刻和第N+1个心跳时刻之间的多个第一定时器唤醒时间中的至少两个,均延迟至第N+1个心跳时刻,该第N+1个心跳时刻即为第二定时器唤醒时间。
具体的,如图3所示,该方法可以包括:
301、接收智能终端的应用程序发送的多个定时器设置指示;
其中,参见图4所示,图4为本发明智能终端的唤醒控制方法另一实施例中的定时器初始时序图。该图4示出的是位于时间轴上的应用程序发送的多个第一定时器唤醒时间(每个向上的箭头线表示一个第一定时器唤醒时间)。需要说明的是,本实施例中是将一段时间内的多个第一定时器唤醒时间同时显示出来,但是实际上,在某个时刻有可能在时间轴上只有一个或者少数几个第一定时器唤醒时间,比如,假设图4所示的是从第3分10秒至第9分20秒的时间段,并且假设第一个箭头线表示在第3分20秒是应用程序1设定的第一定时器唤醒时间41,后续会再接收到其他的第一定时器唤醒时间,例如,第一定时器唤醒时间42是在第一定时器唤醒时间41之后接收到的。即,图4仅仅是为了对方法的描述更加清楚而显示了某一段时间内出现在时间轴上的多个第一定时器唤醒时间,但是该多个第一定时器唤醒时间有可能是先后接收到的,第一定时器唤醒时间的指示是由各应用程序自身确定的,Alarm Manager Service仅是接收而已。
参见图4,本实施例中所述的应用程序发送的多个定时器设置指示,假设是由多个应用程序分别发送的多个定时器设置指示,例如,第一定时器唤醒时间41是应用程序1指示的定时器时间,第一定时器唤醒时间42是应用程序2指示的定时器时间,第一定时器唤醒时间43是应用程序3指示的定时器时间等。此外,由于应用程序需要定时与网络服务器交互,其可能会定期指示第一定时器唤醒时间,例如,有可能图4中的第一定时器唤醒时间44又是应用程序1指定的,即应用程序1会定期指示Alarm Manager Service设置定时器以唤醒智能终端。由图4可以看到,时间轴上的多个第一定时器唤醒时间是不同的,例如,第一定时器唤醒时间41是位于3分20秒,第一定时器唤醒时间42是位于3分50秒。
302、将多个第一定时器唤醒时间均延迟至第一个心跳时刻,所述第一个心跳时刻是晚于每个所述第一定时器唤醒时间的第一个心跳时刻,所述第一个心跳时刻是所述第二定时器唤醒时间;
本实施例中,对图4中所示的时间轴上的多个第一定时器唤醒时间进行了延迟,并且是将该多个第一定时器唤醒时间均合并在同一个心跳时刻。具体方式如下:图5为本发明智能终端的唤醒控制方法另一实施例中的心跳时刻设置示意图,如图5所示,其中的虚线箭头线表示心跳时刻,该心跳时刻 是本实施例在应用程序发送的第一定时器唤醒时间之外,由Alarm ManagerService另外设置的一些定时器唤醒时间;例如,心跳时刻51、心跳时刻52、心跳时刻53等。上述的各心跳时刻在本实施例中是周期性设置的,即是具有固定间隔的,例如可以是每隔5分钟设置一个心跳时刻。
图6为本发明智能终端的唤醒控制方法另一实施例中的定时器唤醒时间合并示意图,图6所示的是将多个第一定时器唤醒时间均延迟至同一个心跳时刻之后的状态。下面结合图5和图6对本实施例的方法进行说明:
具体实施中,Alarm Manager Service可以采用如下算法将其接收到的第一定时器唤醒时间延迟至晚于其的第一个心跳时刻,即“Tx_new=T0+T*[(Tx-T0)/T+1]”;其中,TX是某个第一定时器唤醒时间,Tx_new是将TX延迟后的时间(实际也是将该TX延迟至的所述第一个心跳时刻的时间);T0是图6所示的位于该时间轴上的第一个心跳时刻;T是心跳时刻的设置周期。举例如下:以第一定时器唤醒时间41为例,按照上述公式,(Tx-T0)/T应该是个小于1的分数例如是0.25,则此时要对该结果做取整运算,即取值为0,然后得到Tx_new=T0+T*(0+1)=T0+T=T1,即要将第一定时器唤醒时间41延迟至T1。再举例如下:以第一定时器唤醒时间46为例,按照上述公式,(Tx-T0)/T应该是个大于3的分数例如是3.4,则对该结果做取整运算后的取值为3,然后得到Tx_new=T0+T*(3+1)=T0+T*4=T4,即要将第一定时器唤醒时间46延迟至T4。
特殊的,实际中有可能会出现某个第一定时器唤醒时间TX正好与某个心跳时刻重合,假设该TX正好与心跳时刻T2重合,则如果按照上面的公式确定,Tx_new=T0+T*[2+1]=T0+T*3=T3。或者,优选的,此时可以对该第一定时器唤醒时间TX可以不做调整,AlarmManager Service可以先计算(Tx-T0)/T,并判断该结果是否是整数,如果是整数,则表明TX正好与某个心跳时刻重合,Alarm Manager Service则不对该TX做调整;否则,如果不是整数,则Alarm Manager Service继续按照上述公式确定将该TX延迟至的心跳时刻即可,例如,将TX修改为TX_new。
上述仅是说明了一种可选的确定将第一定时器唤醒时间延迟至的心跳时刻的算法,具体实施中并不局限于此,Alarm Manager Service只要能够将多个第一定时器唤醒时间均延迟至所述的第一个心跳时刻即可。例如,Alarm Manager Service在接收到第一定时器唤醒时间后,可以将该第一定时器唤醒时间与心跳时刻进行比较,因为心跳时刻是由Alarm Manager Service自身确定的,所以Alarm Manager Service是能够知道各心跳时刻的位置的,Alarm Manager Service可以确定出该第一定时器唤醒时间是位于哪两个心跳时间之间的,可以确定出位于该第一定时器唤醒时间之后的第一个心跳时刻是哪个,从而就可以将第一定时器唤醒时间延迟至该心跳时刻即可。例如,Alarm Manager Service可以确定出第一定时器唤醒时间41是位于T0和T1之间的(因为Alarm Manager Service是可以知道T0、T1和第一定时器唤醒时间41的时刻的,具体的判断第一定时器唤醒时间41位于T0和T1之间的方式可以有多种,例如进行时间比较),从而Alarm Manager Service就将该第一定时器唤醒时间41更改为T1,即将其延迟至T1。
本实施例中,结合图5和图6所示,在心跳时刻T1合并了四个第一定时器唤醒时间(图6中的W所示的四个),在心跳时刻T2合并了两个第一定时器唤醒时间,在心跳时刻T3和T4分别合并了四个第一定时器唤醒时间。原本的时间轴上的定时器设置时序(图4中的时序),智能终端将被唤醒14次(因为每个第一定时器唤醒时间的位置都要设置定时器,智能终端都将被唤醒),而在经过本实施例的合并后,将多个第一定时器唤醒时间均延迟至某个心跳时刻,智能终端仅被唤醒5次,即仅在图6中所示的T0、T1、T2、T3和T4的时刻设置Alarm,唤醒智能终端,从而大大降低了智能终端的系统功耗。
需要说明的是,本实施例中的心跳时刻的设置周期是可以调整的,但是不能影响应用程序的正常运行,所以具体可以根据应用程序的最长容忍延迟时间进行设置,以不超过该最长容忍延迟时间为准。因为定时器设置指示对应的唤醒时间是应用程序根据其自身的定时与网络服务器交互的需要而设定的,通常会具有一定的限制,不能随意延迟;进一步的,在上述的根据心跳时刻将多个唤醒时间合并在第二定时器唤醒时间的处理过程中,如果有某些特殊的应用程序指示的唤醒时间不能被调整,则忽略这些应用程序的时间不对其进行调整,即仍然按照应用程序指示的唤醒时间执行智能终端的唤醒。
举例如下:比如Alarm Manager Service接收到了某个应用程序发送的定时器设置指示,该指示的唤醒时间例如是第5分20秒;Alarm Manager Service 将首先判断该唤醒时间是否允许调整,具体实施中,可以是预先在Alarm Manager Service存储不允许调整定时器设置指示所指示的唤醒时间的应用程序的信息,比如,凡是应用程序1指示的唤醒时间都是不允许调整的,则Alarm Manager Service在接收到定时器设置指示时,可以判断发送该定时器设置指示的应用程序是否是应用程序1。如果是,则确定该定时器设置指示对应的唤醒时间不允许调整,Alarm Manager Service就不对该唤醒时间调整,仍然保持该唤醒时间不变并在该时刻唤醒智能终端;否则,如果应用程序不是应用程序1,说明该定时器设置指示对应的唤醒时间是允许调整的,可以称为第一定时器唤醒时间,则Alarm ManagerService将按照上述的方式,将该定时器设置指示对应的第一定时器唤醒时间延迟至其后的第一个心跳时刻。
303、在所述第二定时器唤醒时间唤醒所述智能终端;
其中,Alarm Manager Service在将多个第一定时器唤醒时间均延迟至其后的第一个心跳时刻之后,将在该第一个心跳时刻即图6中的各心跳时刻T0~T4唤醒智能终端,该唤醒智能终端的具体方式是常规技术,不再赘述。
其中,在本实施例开始时所述的,第N个心跳时刻和第N+1个心跳时刻,N为自然数,在上述的实施例中均是以N为大于等于1的数为例进行说明的,比如,图5中所示出的“心跳时刻51和心跳时刻52”可以为“第一个心跳时刻和第二个心跳时刻”或者在整个时间轴上也可以为“第四个心跳时刻和第五个心跳时刻”(此时前边的心跳时刻在图5时间轴未显示出)。此外,当N为0时,以图5为例,就相当于没有心跳时刻51了,第一定时器唤醒时间41~43的后边只有心跳时刻52,这样其实心跳时刻52就是第一个心跳时刻,因为前边已经没有心跳时刻了。本实施例主要是将各第一定时器唤醒时间延迟至位于该第一定时器唤醒时间之后的第一个心跳时刻。
实施例三
图7为本发明智能终端的唤醒控制方法另一实施例的流程示意图,本实施例中的调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间。
如图7所示,该方法可以包括:
701、接收智能终端的应用程序发送的多个定时器设置指示;
其中,本实施例的Alarm Manager Service接收到的多个定时器设置指示中确定的定时器时序仍然以图4所示的定时器时序为例,对于该时序的说明 可以参见实施例二,不再说明。
702、将多个第一定时器唤醒时间均延迟至第二定时器唤醒时间,所述第二定时器唤醒时间位于每个第一定时器唤醒时间的最长容忍延迟时间的范围内,并且是多个第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间;
下面举例说明可选的将多个第一定时器唤醒时间均延迟至第二定时器唤醒时间的方式:其中,Alarm Manager Service接收各个第一定时器唤醒时间是分别逐个接收到的,并且,对于各第一定时器唤醒时间的最长容忍延迟时间的判断也是逐步判断的,每次接收到一个第一定时器唤醒时间都要进行一次判断。举例如下:
第一步:接收到第一定时器唤醒时间41、和第一定时器唤醒时间42;
Alarm Manager Service可以接收智能终端上的多个应用程序分别指示的第一定时器唤醒时间,结合图4所示,假设当前Alarm Manager Service接收到了第一定时器唤醒时间41对应的定时器设置指示,之后接收到了第一定时器唤醒时间42的设置指示,此时第一定时器唤醒时间41尚未到达。Alarm Manager Service在接收到该第一定时器唤醒时间42的指示时,将判断该第一定时器唤醒时间42是否在第一定时器唤醒时间41的最长容忍延迟时间的范围内。
具体的,Alarm Manager Service会先确定第一定时器唤醒时间41的最长容忍延迟时间,该最长容忍延迟时间是不影响应用程序1的正常运行下所能够容忍的最长延迟时间;例如,该最长容忍延迟时间是2分钟,则表示应用程序指示的第一定时器唤醒时间41最多可以向后推迟2分钟再唤醒。若Alarm Manager Service确定第一定时器唤醒时间42在第一定时器唤醒时间41的最长容忍延迟时间的范围内,即应用程序是能够容忍将第一定时器唤醒时间41延迟到第一定时器唤醒时间42的,则Alarm Manager Service将执行:将第一定时器唤醒时间41延迟至第一定时器唤醒时间42,表示当到达第一定时器唤醒时间41时就不再唤醒,已经将该时间推迟到了第一定时器唤醒时间42再唤醒。该第一定时器唤醒时间42称为第二定时器唤醒时间。
第二步:接收到第一定时器唤醒时间43;
此时,假设当前时间还未到达第一定时器唤醒时间42,并且,Alarm ManagerService接收到了第一定时器唤醒时间43的指示,则Alarm Manager Service将接着判断,该第一定时器唤醒时间43是否在第一定时器唤醒时间41的最长容忍延迟时间的范围内,同时,该第一定时器唤醒时间43是否在第一定时器唤醒时间42的最长容忍延迟时间的范围内。如果第一定时器唤醒时间43满足上述的前两个第一定时器唤醒时间的最长容忍延迟时间的限制,即均在前两个的最长容忍延迟时间的范围内,则Alarm Manager Service将执行:将第一定时器唤醒时间41、第一定时器唤醒时间42均延迟至第一定时器唤醒时间43。此时该第一定时器唤醒时间43称为第二定时器唤醒时间。
如果第一定时器唤醒时间43不能够同时满足前两个第一定时器唤醒时间的最长容忍延迟时间的限制,比如,第一定时器唤醒时间43在第一定时器唤醒时间41的最长容忍延迟时间的范围内,但是不在第一定时器唤醒时间42的最长容忍延迟时间的范围内;或者,第一定时器唤醒时间43仅在第一定时器唤醒时间42的最长容忍延迟时间的范围内;AlarmManager Service都将执行:确定仅将第一定时器唤醒时间41延迟至第一定时器唤醒时间42,第一次合并结束,而第一定时器唤醒时间43将重新开始与其后面的第一定时器唤醒时间执行合并;此时相当于第一定时器唤醒时间42确定为第二定时器唤醒时间。
当Alarm Manager Service接收多个第一定时器唤醒时间时,第一定时器唤醒时间的延迟处理的方法与上述的方法相同;即,Alarm Manager Service每接收到一个第一定时器唤醒时间,都会执行一次最长容忍延迟时间的判断,判断该新接收到的第一定时器唤醒时间是否在前边的所有第一定时器唤醒时间的最长容忍延迟时间的范围内;如果是,则继续将前边的时间延迟至该新接收到的第一定时器唤醒时间;否则,将该新接收到的第一定时器唤醒时间前边的最后一个时间确定为第二定时器唤醒时间,结束前一阶段的延迟处理。需要说明的是,本实施例中,对每个第一定时器唤醒时间,根据其对应的应用程序的不同设定不同的最长容忍延迟时间。
图4中所示的定时器时序在经过本实施例的方法合并后,成为了图8所示的序列,图8为本发明智能终端的唤醒控制方法又一实施例中的定时器唤醒时间合并示意图,原本在图4中的14次第一定时器唤醒时间,合并为4次第二定时器唤醒时间,即图8中所示的第二定时器唤醒时间81~第二定时器唤醒时间84;这几个第二定时器唤醒时间是按照上述方法确定的最长容忍延 迟时间的范围内的时间最晚的第一定时器唤醒时间。例如,第二定时器唤醒时间81即显示将上述表1中的第一定时器唤醒时间41至第一定时器唤醒时间45合并,这样这五个第一定时器唤醒时间都在第一定时器唤醒时间45启动Alarm;相比于现有技术,本实施例仅需要在这四个第二定时器唤醒时间设置Alarm,唤醒智能终端,原本要执行五次的唤醒现在只执行一次即可,大大降低了智能终端的系统功耗。
进一步的,在本实施例的延迟处理方式中,Alarm Manager Service在进行最长容忍延迟时间的判断时,也可以首先判断定时器设置指示对应的唤醒时间是否允许调整;若允许,则执行所述将多个所述第一定时器唤醒时间均延迟至第二定时器唤醒时间;否则,对所述唤醒时间不做调整,即仍然在该唤醒时间唤醒终端。例如,智能终端中存在的某些特定的定时器(比如特殊的应用、系统的闹钟)不允许被延迟。
此外,上述的各应用程序的最长容忍延迟时间的设置与实施例二中的心跳时刻的设置一样,也不能影响应用程序的正常运行;即,应用程序的最长容忍延迟时间可以通过测试或者自动学习得到的,需要保证该最长容忍延迟时间不影响应用程序的正常运行。
可选的,还可以按照如下的方式进行唤醒时间的延迟:比如,在上述的判断方式中,接收到第一定时器唤醒时间42时,可以将该第一定时器唤醒时间42增加其对应的最长容忍延迟时间,假设第一定时器唤醒时间42增加最长容忍延迟时间后得到延迟后时间A,假设第一定时器唤醒时间41增加其对应的最长容忍延迟时间后得到延迟后时间B;接着,比较延迟后时间A和延迟后时间B,选择两者中的时间最早的一个作为第二定时器唤醒时间,此时能够保证该第二定时器唤醒时间在第一定时器唤醒时间42和第一定时器唤醒时间41的最长容忍延迟时间范围内。
即,所述第二定时器唤醒时间是至少两个第一定时器唤醒时间分别对应的延迟后时间中的时间最早的一个,所述延迟后时间是所述第一定时器唤醒时间延迟对应的最长容忍延迟时间后得到。
703、在所述第二定时器唤醒时间唤醒所述智能终端;
上述的本实施例的智能终端的唤醒控制方法能有效减少系统在待机状态下被唤醒的次数,从而有效降低智能终端系统的功耗。通过按照上述的方法 在Android智能手机上做验证,在同等情况下测试,按照本发明实施例的方法调整后智能手机的待机电流能降低10~40%不等,显著降低了功耗。
可以结合图9和图10说明本发明实施例的效果,图9为本发明智能终端的唤醒控制方法实施例的电量消耗示意图一,图10为本发明智能终端的唤醒控制方法实施例的电量消耗示意图二,从图9中看出,以应用程序1~应用程序4为例,在采用本发明实施例的方法调整前,各应用程序是各自分别执行智能终端唤醒的,所以应用程序1在唤醒终端时会产生电量消耗91和电量消耗92,其中,电量消耗91是应用程序1在唤醒智能终端时消耗的电量,电量消耗92是在应用程序1与其网络服务器进行交互完成后断开连接之前消耗的电量,因为即使应用程序1交互完成,智能终端也会有一个检测的过程,检测应用程序1与网络服务器是否还有数据传输,是否正在交互,如果在一段时间内都没有检测到两者的交互,则智能终端将判断应用程序1与网络服务器交互完成,再断开连接,那么在所述的检测的一段时间内是仍然消耗电量的,即电量消耗92;电量消耗91和电量消耗92之间的部分是电量消耗93,这是应用程序1与其网络服务器进行交互所消耗的电量。同理,应用程序2在运行时也会产生电量消耗94、电量消耗95和电量消耗96;其他应用程序类似,不再说明。
参见图10,在采用本发明实施例的智能终端的唤醒控制方法之后,原本四个应用程序需要分别通过四个不同的定时器唤醒终端,需要执行四次唤醒;而本发明实施例变成了这四个应用程序通过一个定时器唤醒终端,仅需要一次唤醒即可。比如图6中的W所表示的,原本是四个第一定时器唤醒时间(是分别与应用程序1~应用程序4对应的),将这四个第一定时器唤醒时间都进行延迟在心跳时刻T1进行合并,仅执行一次定时器唤醒即可,大大减少了唤醒次数;并且从图10的电量消耗图也可以明显看到,例如,在T1时刻唤醒智能终端后,应用程序1~应用程序4均会开始与各自的网络服务器开始交互,最后,等这四个应用程序都交互完成后,智能终端断开与网络服务器的连接即可,所以,在这个过程中,仅有一次唤醒终端的电量消耗1001、以及一次断开连接前的电量消耗1002。比较图9和图10,很明显的大大节省了电量。
本实施例所述的降低智能终端的功耗,包括了应用程序交互前后的功耗,例如图9中所示的应用程序2的电量消耗94和电量消耗95,在采用本发明 实施例的方法后,在图10中实际上相当于应用程序2产生的电量消耗94和电量消耗95都没有了;在图9中这四个应用程序共有8部分电量消耗(每个应用程序交互前后的各有两部分例如电量消耗94和电量消耗95),而在图10中仅有2部分电量消耗即电量消耗1001以及电量消耗1002,所以降低了降低智能终端的功耗。
此外,通常会选用实施例二的方式进行延迟处理,因为这种方式心跳时刻是周期性固定设置,实现起来也更加简单;但是,当智能终端中存在周期较长的应用程序,并且能够适合采用实施例三的方式进行合并,合并后的唤醒次数比实施例二的方式的唤醒次数更少时,也可以优选采用实施例三。即,在具体实施中,可以根据实际情况选择采用上述的两种延迟处理方式。
本发明实施例是对智能终端中的Alarm Manager Service进行优化调整,而对应用程序并没有限制和修改,例如,各应用程序仍然是按照其各自的设置定时向AlarmManager Service发送对于第一定时器唤醒时间的定时器设置指示,本发明实施例仅是在Alarm Manager Service接收到应用程序发送的上述指示时,对其指示的第一定时器唤醒时间进行延迟执行而已,所以实施简单,涉及到的改动较小。
实施例四
本实施例提供了一种智能终端的唤醒控制方法,该方法是适用于周期性设置心跳时刻的方案中。
其中,以智能终端上的某个应用程序为例,该应用程序周期性发送定时器设置指示,用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间,每次第一定时器唤醒时间与上一次接收的第一定时器唤醒时间间隔第一时间。例如,假设所述的第一时间是4分钟,即该应用程序指示设置的第一定时器唤醒时间是每隔4分钟设置一次,也就是每4分钟唤醒一次终端,那么1小时就要唤醒15次智能终端。
本实施例中,设置了周期性的心跳时刻,该心跳时刻的设置周期是第二时间,所述第二时间长于所述第一时间,例如该第二时间是5分钟,即每间隔5分钟设置一次心跳时刻。唤醒控制装置接收到应用程序发送的定时器设置指示后,将其指示的第一定时器唤醒时间延迟至,位于所述第一定时器唤醒时间之后的最早的心跳时刻,该延迟至的心跳时刻可以称为第二定时器唤 醒时间,并在所述第二定时器唤醒时间唤醒所述智能终端。
例如,以时间轴上的时间第0分钟为起始,则将在第5分钟设置一个心跳时刻,应用程序将设置在第4分钟执行一次唤醒;根据本实施例的方案,智能终端的唤醒控制装置会将应用程序指示的第4分钟延迟至第5分钟,即在第5分钟再执行唤醒;同理,应用程序接着会指示在第9分钟再设置唤醒时间,而心跳时刻是设置在第10分钟,则唤醒控制装置会将第9分钟延迟至第10分钟;依次类推。可以得到,经过心跳时刻的设置,应用程序原来的4分钟唤醒周期被修改为5分钟唤醒周期,则1小时内的唤醒次数也由15次缩减到12次,从而也达到了降低终端能量消耗的目的。
实施例五
本发明实施例还提供了一种智能终端的唤醒控制装置,该装置可以执行本发明的任意方法实施例,并且该装置是位于Alarm Manager Service中,可以是Alarm ManagerService的一部分,Alarm Manager Service通过该装置可以执行上述的方法实施例。
图11为本发明智能终端的唤醒控制装置一实施例的结构示意图,如图11所示,该装置可以包括:指示接收单元1101和唤醒控制单元1102;其中,
指示接收单元1101,用于接收智能终端的一个或一个以上的应用程序发送的至少两个定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间;
唤醒控制单元1102,用于将与至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,并在所述第二定时器唤醒时间唤醒所述智能终端。
图12为本发明智能终端的唤醒控制装置另一实施例的结构示意图,本实施例在图11结构的基础上,其中的唤醒控制单元1102可以包括:信息存储子单元1201、延迟处理子单元1202和唤醒触发子单元1203;其中,
信息存储子单元1201,用于存储预设的调整控制信息,所述调整控制信息是周期性设置的多个心跳时刻,所述周期性设置的心跳时刻包括相邻的第N个心跳时刻和第N+1个心跳时刻,所述第N+1个心跳时刻的时间晚于所述第N个心跳时刻,所述N为自然数;
延迟处理子单元1202,用于将所述第N个心跳时刻和第N+1个心跳时刻之间的至少两个所述第一定时器唤醒时间中的至少两个,均延迟至所述第N+1个心跳时刻,所述第N+1个心跳时刻是所述第二定时器唤醒时间;所述第N个心跳时刻和第N+1个心跳时刻之间存在至少两个所述第一定时器唤醒时间;
唤醒触发子单元1203,用于在第二定时器唤醒时间唤醒所述智能终端。
图13为本发明智能终端的唤醒控制装置另一实施例的结构示意图,本实施例在图11结构的基础上,其中的唤醒控制单元1102可以包括:信息存储子单元1301、延迟处理子单元1302和唤醒触发子单元1303;其中
信息存储子单元1301,用于存储预设的调整控制信息,所述调整控制信息是所述第一定时器唤醒时间的最长容忍延迟时间;
延迟处理子单元1302,用于将至少两个所述第一定时器唤醒时间中的至少两个延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是至少两个所述第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间,并且位于至少两个所述第一定时器唤醒时间中的其他第一定时器唤醒时间的最长容忍延迟时间的范围内;
唤醒触发子单元1303,用于在第二定时器唤醒时间唤醒所述智能终端。
进一步的,上述的延迟处理子单元1302,还可以用于将至少两个所述第一定时器唤醒时间中的至少两个延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是所述至少两个第一定时器唤醒时间分别对应的延迟后时间中的时间最早的一个,所述延迟后时间是所述第一定时器唤醒时间延迟对应的最长容忍延迟时间后得到。
进一步的,延迟处理子单元1302可以包括:容忍判断子单元1401和延迟确定子单元1402;其中,
容忍判断子单元1401,用于判断当前接收到的定时器设置指示对应的第一定时器唤醒时间是否在最长容忍延迟时间的范围内,所述最长容忍延迟时间包括分别与所述第一定时器唤醒时间之前的各其他第一定时器唤醒时间对应的最长容忍延迟时间;
延迟确定子单元1402,用于在判断结果为是时,将所述其他第一定时器唤醒时间均延迟至所述第一定时器唤醒时间,所述第一定时器唤醒时间为所 述第二定时器唤醒时间;否则,确定所述其他第一定时器唤醒时间中的时间最晚的第一定时器唤醒时间为所述第二定时器唤醒时间,将所述其他第一定时器唤醒时间均延迟至所述第二定时器唤醒时间;所述其他第一定时器唤醒时间为至少两个所述第一定时器唤醒时间。
进一步的,本实施例的唤醒控制单元1102,具体用于将与所述至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,修改为根据预设的调整控制信息确定的第二定时器唤醒时间。
本发明实施例的智能终端的唤醒控制装置,使用于智能终端上,该智能终端例如是智能手机、智能平板电脑、超级本等具有智能操作系统的终端上,通过采用该装置,能够减少唤醒智能终端的次数,降低智能终端的功耗。
实施例六
本实施例提供了一种智能终端的唤醒控制装置,包括:
指示接收单元,用于接收智能终端的一个应用程序发送的定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间,所述第一定时器唤醒时间与上一次接收的第一定时器唤醒时间间隔第一时间;
唤醒控制单元,用于将所述第一定时器唤醒时间延迟至第二定时器唤醒时间,所述第二定时器唤醒时间是周期性设置的心跳时刻中的位于所述第一定时器唤醒时间之后的最早的心跳时刻,且所述心跳时刻的设置周期是第二时间,所述第二时间长于所述第一时间;并在所述第二定时器唤醒时间唤醒所述智能终端。
实施例七
本实施例提供一种智能终端,该智能终端中包括本发明实施例所述的唤醒控制装置,该唤醒控制装置可用于执行本发明实施例中所述的方法。
图14为本发明智能终端的唤醒控制装置所应用的智能终端的结构示意图,如图14所示,该智能终端可以为手机、平板电脑、个人数字助理(Personal Digital Assistant,简称:PDA)、销售终端(Point of Sales,简称:POS)、车载电脑等终端设备;以该智能终端为手机为例,图14示出的是与本发明实施例提供的智能终端相关的手机500的部分结构的框图。
参考图14,手机500包括射频(Radio Frequency,简称:RF)电路510、 存储器520、输入单元530、显示单元540、传感器550、音频电路560、无线保真(wireless fidelity,简称:WiFi)模块570、处理器580、以及电源590等部件。本领域技术人员可以理解,图14中示出的手机结构只做实现方式的举例,并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图14对手机500的各个构成部件进行具体的介绍:
RF电路510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器580处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,简称:LNA)、双工器等。此外,RF电路510还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,简称:GSM)、通用分组无线服务(GeneralPacket Radio Service,简称:GPRS)、码分多址(Code Division Multiple Access,简称:CDMA)、宽带码分多址(Wideband Code Division Multiple Access,简称:WCDMA)等。
存储器520可用于存储软件程序以及模块,处理器580通过运行存储在存储器520的软件程序以及模块,从而执行手机500的各种功能应用以及数据处理。存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元530可用于接收输入的数字或字符信息,以及产生与手机500的用户设置以及功能控制有关的键信号输入。具体地,输入单元530可包括触控面板531以及其他输入设备532。触控面板531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板531上或在触控面板531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板531可包括触摸检测装置和触摸控制器 两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器580,并能接收处理器580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板531。除了触控面板531,输入单元530还可以包括其他输入设备532。具体地,其他输入设备532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元540可用于显示由用户输入的信息或提供给用户的信息以及手机500的各种菜单。显示单元540可包括显示面板541,可选的,可以采用液晶显示器(LiquidCrystal Display,简称LCD:)、有机发光二极管(Organic Light-Emitting Diode,简称:OLED)等形式来配置显示面板541。进一步的,触控面板531可覆盖显示面板541,当触控面板531检测到在其上或附近的触摸操作后,传送给处理器580以确定触摸事件的类型,随后处理器580根据触摸事件的类型在显示面板541上提供相应的视觉输出。虽然在图14中,触控面板531与显示面板541是作为两个独立的部件来实现手机500的输入和输入功能,但是在某些实施例中,可以将触控面板531与显示面板541集成而实现手机500的输入和输出功能。
手机500还可包括至少一种传感器550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板541的亮度,接近传感器可在手机500移动到耳边时,关闭显示面板541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路560、扬声器561,传声器562可提供用户与手机500之间的音频接口。音频电路560可将接收到的音频数据转换后的电信号,传输到扬声器561,由扬声器561转换为声音信号输出;另一方面,传声器562将收集的声音 信号转换为电信号,由音频电路560接收后转换为音频数据,再将音频数据输出处理器580处理后,经RF电路510以发送给比如另一手机,或者将音频数据输出至存储器520以便进一步处理。
WiFi属于短距离无线传输技术,手机500通过WiFi模块570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图14示出了WiFi模块570,但是可以理解的是,其并不属于手机500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器580是手机500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行手机500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器580可包括一个或多个处理单元;优选的,处理器580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器580中。
手机500还包括给各个部件供电的电源590(比如电池),优选的,电源可以通过电源管理系统与处理器580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机500还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该智能终端的存储器520中的存储程序区存储了用于执行本发明实施例方法的程序代码,存储数据区存储了应用程序发送的多个定时器设置指示所对应的第一定时器唤醒时间、以及确定的第二定时器唤醒时间等;本实施例的处理器580,可以调用存储器520中存储的程序代码及相关信息执行如下处理:
接收智能终端的一个或一个以上的应用程序发送的至少两个定时器设置指示,所述定时器设置指示用于指示应用程序确定的唤醒所述智能终端的第一定时器唤醒时间;
将与所述至少两个定时器设置指示分别对应的至少两个所述第一定时器唤醒时间中的至少两个,延迟至根据预设的调整控制信息确定的第二定时器唤醒时间,并在所述第二定时器唤醒时间唤醒所述智能终端。
所述处理器还可以被配置用于执行方法实施例中的其他各个步骤,在这里不再一一描述。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。