技术领域
[0001] 本
发明涉及智能终端领域,特别涉及智能终端中针对定时唤醒频率控制,提高手机续航能
力的方法。
背景技术
[0002] 智能终端一般有两种状态:休眠状态和正常运行状态。休眠状态是智能终端除电源管理以外的其他外围模
块,比如
液晶显示器(LCD:Liquid Crystal Display)
背光,重力感应器,
触摸屏及
中央处理器(CPU:Central Processing Unit)均不工作,只有内存保持自动刷新且LCD关闭的一种低功耗的状态。反之正常运行状态是一种大部分设备保持运行的功耗状态。如果用户在不操作智能终端的情况下让智能终端一直保持休眠状态,会降低智能终端功率损耗,增加智能终端的续航时间。
[0003] 智能终端唤醒频率主要指单位时间内智能终端被手动或者自身唤醒的次数,手动唤醒是指用户按智能手机的开机键(即Power键)把手机从休眠状态切换到正常运行状态,这种情况是用户自主的行为,我们不能控制;智能终端的自身唤醒主要指
实时时钟(RTC:Real Time Clock)唤醒或者电信业务唤醒,正常的电信业务把手机从休眠状态切换到正常运行状态是最基本的业务要求,不能进行限制;RTC唤醒是指上层应用运行的时候设置的一些支持唤醒状态的
定时器在时间到了之后,RTC触发中断从而唤醒智能终端。
[0004] RTC唤醒的设置来自智能终端安装的
软件或者系统自身正常运行时产生的各种类型的Alarm定时器,当系统在休眠状态下时,有些Alarm定时器时间到了之后,RTC会唤醒整个智能终端系统。所有上层软件和系统的定时器设置和消息通知都需要通过Alarm Manager来进行管理操作。
[0005] 正常情况下智能终端一直处于休眠状态下,一晚上8小时约耗电3%左右;同样一晚上8小时如果智能终端单小时内被RTC唤醒10次,会是一直处理休眠的情况下耗电量的3倍左右,如果RTC唤醒的频率更高则无法估计其带来的耗电量,甚至很容易超过50%,所以如果可以控制其休眠的RTC唤醒频率,则对智能终端续航能力的提升有很大的意义,也提高了用户体验。
发明内容
[0006] 本发明的目的在于提供一种调整智能终端唤醒频率的方法及装置,能够解决智能终端因规律性的被RTC唤醒而导致的电量损耗问题。
[0007] 根据本发明的一个方面,提供了一种调整智能终端唤醒频率的方法,包括:对智能终端的当前运行状态进行检测,并根据检测结果对Alarm定时器进行相应的定时设置处理;
[0008] 若检测结果为智能终端处于正常运行状态,则根据对应于正常运行状态的定时器配置信息对所有的Alarm定时器进行定时设置处理,使得至少一部分Alarm定时器在同一时间点上进行唤醒;
[0009] 若检测结果为智能终端处于休眠状态,则根据对应于休眠状态的定时器配置信息,对所有的Alarm定时器进行定时设置处理,把至少一部分Alarm定时器进行清除。
[0010] 优选地,根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到需要改变定时数据的Alarm定时器;
[0011] 根据对应于正常运行状态的定时器配置信息中的预置信息数据改变所找到的Alarm定时器的定时数据;
[0012] 将改变了定时数据的Alarm定时器设置到RTC中。
[0013] 优选地,根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到不需要改变定时数据的Alarm定时器;
[0014] 将所找到的不需要改变定时数据的Alarm定时器设置到RTC中。
[0015] 优选地,所述的使得至少一部分Alarm定时器在同一时间点上进行唤醒是,把至少一部分Alarm定时器在一段时间内的处理集中在一个时间点上进行处理。
[0016] 优选地,根据对应于休眠状态的定时器配置信息中的Alarm定时器标识,找到需要清除的Alarm定时器;
[0017] 将所找到的需要清除的Alarm定时器从所述RTC中删除。
[0018] 优选地,根据对应于休眠状态的定时器配置信息中的Alarm定时器标识,确定不需要清除的Alarm定时器;
[0019] 在所述RTC中继续保持所确定的不需要清除的Alarm定时器。
[0020] 根据本发明的另一方面,提供了一种调整智能终端唤醒频率的装置,包括:
[0021] 检测模块,用于对智能终端的当前运行状态进行检测,并根据检测结果对Alarm定时器进行相应的定时设置处理;
[0022] 正常运行模块,用于若检测结果为智能终端处于正常运行状态,则根据对应于正常运行状态的定时器配置信息对所有的Alarm定时器进行定时设置处理,使得至少一部分Alarm定时器在同一时间点上进行唤醒;
[0023] 休眠模块,用于若检测结果为智能终端处于休眠状态,则根据对应于休眠状态的定时器配置信息,对所有的Alarm定时器进行定时设置处理,把至少一部分Alarm定时器进行清除。
[0024] 优选地,查找改变定时数据子模块,用于根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到需要改变定时数据的Alarm定时器;
[0025] 定时数据设置子模块,用于根据对应于正常运行状态的定时器配置信息中的预置信息数据改变所找到的Alarm定时器的定时数据;
[0026] 保存改变定时数据子模块,用于将改变了定时数据的Alarm定时器设置到RTC中。
[0027] 优选地,查找不改变定时数据子模块,用于根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到不需要改变定时数据的Alarm定时器;
[0028] 保存不改变定时数据子模块,用于将所找到的不需要改变定时数据的Alarm定时器设置到RTC中。
[0029] 优选地,查找清除定时器子模块,用于根据对应于休眠状态的定时器配置信息中的Alarm定时器标识,找到需要清除的Alarm定时器;
[0030] 定时器清除子模块,用于将所找到的需要清除的Alarm定时器从所述RTC中删除。
[0031] 与
现有技术相比较,本发明的有益效果在于:在智能终端现有的设备上,通过用户设置控制RTC唤醒频率的方法,减少智能终端的功率损耗,实现了增加智能终端的续航时间,既兼顾了降低功耗,也提升了用户体验。
附图说明
[0032] 图1是本发明
实施例提供的调整智能终端唤醒频率的方法
流程图;
[0033] 图2是本发明实施例提供的调整智能终端唤醒频率的装置结构图;
[0034] 图3是本发明实施例提供的调整智能终端唤醒频率的运行原理图;
[0035] 图4是本发明实施例提供的调整智能终端唤醒频率的系统正常运行时Alarm定时控制智能终端唤醒频率的处理流程图;
[0036] 图5是本发明实施例提供的调整智能终端唤醒频率的系统进入休眠时Alarm定时控制智能终端唤醒频率的处理流程图。
具体实施方式
[0037] 以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0038] 图1是本发明实施例提供的调整智能终端唤醒频率的方法流程图,如图1所示,具体步骤如下:
[0039] 步骤S1:对智能终端的当前运行状态进行检测,并根据检测结果对Alarm定时器进行相应的定时设置处理;
[0040] 步骤S2:若检测结果为智能终端处于正常运行状态,则根据对应于正常运行状态的定时器配置信息对所有的Alarm定时器进行定时设置处理,使得至少一部分Alarm定时器在同一时间点上进行唤醒;
[0041] 所述步骤S2中:根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到需要改变定时数据的Alarm定时器;
[0042] 根据对应于正常运行状态的定时器配置信息中的预置信息数据改变所找到的Alarm定时器的定时数据;
[0043] 将改变了定时数据的Alarm定时器设置到RTC中。
[0044] 根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到不需要改变定时数据的Alarm定时器;
[0045] 将所找到的不需要改变定时数据的Alarm定时器设置到RTC中。
[0046] 进一步地,所述的使得至少一部分Alarm定时器在同一时间点上进行唤醒是,把至少一部分Alarm定时器在一段时间内的处理集中在一个时间点上进行处理。
[0047] 步骤S3:若检测结果为智能终端处于休眠状态,则根据对应于休眠状态的定时器配置信息,对所有的Alarm定时器进行定时设置处理,把至少一部分Alarm定时器进行清除。
[0048] 所述步骤S3中:根据对应于休眠状态的定时器配置信息中的Alarm定时器标识,找到需要清除的Alarm定时器;
[0049] 将所找到的需要清除的Alarm定时器从所述RTC中删除。
[0050] 图2是本发明实施例提供的调整智能终端唤醒频率的装置结构图,如图2所示,包括:上层系统模块、Alarm Manager(Alarm管理器)模块、App(即Application)列表设置模块和RTC模块。
[0051] Alarm Manager模块用于设置所有上层应用或系统设置的Alarm定时器,同时动态监听来自RTC模块的中断
信号并上报给对应的定时源。
[0052] 所述Alarm Manager模块包括检测模块、正常运行模块和休眠模块。
[0053] 检测模块用于对智能终端的当前运行状态进行检测,并根据检测结果对Alarm定时器进行相应的定时设置处理。
[0054] 正常运行模块用于若检测结果为智能终端处于正常运行状态,则根据对应于正常运行状态的定时器配置信息对所有的Alarm定时器进行定时设置处理,使得至少一部分Alarm定时器在同一时间点上进行唤醒。所述正常运行模块的查找改变定时数据子模块用于根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到需要改变定时数据的Alarm定时器。所述正常运行模块的定时数据设置子模块用于根据对应于正常运行状态的定时器配置信息中的预置信息数据改变所找到的Alarm定时器的定时数据。所述正常运行模块的保存改变定时数据子模块用于将改变了定时数据的Alarm定时器设置到RTC中。同时,所述正常运行模块的查找不改变定时数据子模块用于根据对应于正常运行状态的定时器配置信息中的Alarm定时器标识,找到不需要改变定时数据的Alarm定时器。所述正常运行模块的保存不改变定时数据子模块用于将所找到的不需要改变定时数据的Alarm定时器设置到RTC中。
[0055] 休眠模块用于若检测结果为智能终端处于休眠状态,则根据对应于休眠状态的定时器配置信息,对所有的Alarm定时器进行定时设置处理,把至少一部分Alarm定时器进行清除。所述休眠模块的查找清除定时器子模块用于根据对应于休眠状态的定时器配置信息中的Alarm定时器标识,找到需要清除的Alarm定时器。所述休眠模块的定时器清除子模块,用于将所找到的需要清除的Alarm定时器从所述RTC中删除。
[0056] App列表设置模块用于存放设定的遍历App list列表,用户可以配置正常运行模式和休眠模式的Alarm定时器处理的应用黑白名单,整个应用黑白名单可以预置在智能终端本地,也可以动态的从对应的网络
服务器上同步获取。
[0057] RTC模块(即智能终端的相关
硬件设备)用于保存用户设置的Alarm定时器。同时,在对应的Alarm定时器的时间到了之后,产生中断信号并上报给Alarm Manager模块。
[0058] 图3是本发明实施例提供的调整智能终端唤醒频率的运行原理图,如图3所示,当智能终端系统运行时,各个APP或者系统自身会产生多个Alarm定时器,Alarm定时器的定时设置处理需要通过Alarm Manager模块来实现。
[0059] 当智能终端处于正常运行状态时,Alarm Manager模块通过读取用户设置的对应于正常运行状态的应用黑白名单配置,将所有可唤醒的Alarm定时器在某一固定时间段内的处理根据某种
算法集中在一个时间点上进行处理,并将处理后的Alarm定时器设置到RTC中。Alarm定时器的时间达到之后,RTC执行唤醒事件,并将产生的中断信号上报给Alarm Manager模块,Alarm Manager模块监听到来自RTC的中断信号后通知对应的Alarm定时源。这样,降低了智能终端系统定时处理的运行频率,在一定程度上降低了智能终端正常运行时的功率损耗。
[0060] 当智能终端进入休眠模式时,Alarm Manager模块通过读取用户设置的对应于休眠状态的应用黑白名单配置,可以选择保持当前的系统运行策略,智能终端系统的可唤醒Alarm定时器能规律性的间断性唤醒系统,也可以根据应用黑白名单配置选择对应清除相关可唤醒Alarm定时器的设置。这样,智能终端在休眠状态时将会规律性的被RTC唤醒或者不会被RTC唤醒,即根据应用黑白名单配置,当设置在RTC中的所有可唤醒Alarm定时器被清除后,智能终端将不会出现RTC唤醒事件,一直处理低功耗的休眠状态,除非被人为或电信业务唤醒。如果根据应用黑白名单配置只清除了部分可唤醒Alarm定时器的设置,智能终端会规律性的被RTC唤醒,降低了唤醒的频率。
[0061] 其中,应用黑白名单配置
跟踪不同需求,可以来自于智能终端的系统预置,也可以来自于网络服务器,用户可以跟踪需要和对应的操作手段来变更应用黑白名单配置的信息数据。
[0062] 图4是本发明实施例提供的调整智能终端唤醒频率的系统正常运行时Alarm定时控制智能终端唤醒频率的处理流程图。如图4所示,具体步骤如下:
[0063] 步骤401:智能终端处于正常运行状态时,根据系统和各App自身业务需要产生各种Alarm定时器。
[0064] 步骤402:调用Alarm Manager模块进行定时设置处理。
[0065] 步骤403:读取用户设置的应用黑白名单配置的定时器配置信息,判断对应Alarm定时器是否属于应用黑白名单的控制列表中。
[0066] 步骤404:如果是,则根据预置信息数据和算法改变对应Alarm定时器的定时数据后再进行设置。
[0067] 步骤405:如果不是,不做任何处理。
[0068] 步骤406:将所有Alarm定时器设置到RTC中。
[0069] 图5是本发明实施例提供的调整智能终端唤醒频率的系统进入休眠时Alarm定时控制智能终端唤醒频率的处理流程图。如图5所示,具体步骤如下:
[0070] 步骤501:智能终端系统开始进入休眠状态。
[0071] 步骤502:Alarm Manager模块获取当前系统状态为休眠状态,即开始走休眠流程。
[0072] 步骤503:Alarm Manager模块读取用户设置的应用黑白名单配置的定时器配置信息。
[0073] 步骤504:判断应用黑白名单配置中的休眠模式是否允许Alarm唤醒智能终端。
[0074] 步骤505:如果用户设置允许,保持原有设置。
[0075] 步骤506:如果用户不允许被RTC唤醒,清除所有相关Alarm定时器。
[0076] 步骤507:此时,智能终端处于低功耗休眠状态,相关Alarm定时器不会唤醒智能终端。
[0077] 步骤508:智能终端在休眠状态下会被存在的相关Alarm定时器规律性的唤醒,唤醒后智能终端进入正常运行状态,直到再次进入休眠流程。
[0078] 综上所述,本发明具有以下技术效果:能够根据用户设置的应用黑白名单配置,在不同运行状态下控制RTC唤醒频率的方法。通过控制所有Alarm定时器的处理减少智能终端的功率损耗,实现了增加智能终端的续航时间,既兼顾了降低功耗,也提升了用户体验。
[0079] 尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种
修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。