终端功耗控制方法、移动终端及计算机可读存储介质与流程

文档序号:11779308阅读:196来源:国知局
本发明涉及功耗控制
技术领域
:,尤其涉及一种终端功耗控制方法、移动终端及计算机可读存储介质。
背景技术
::随着移动终端上功能应用越来越丰富,各种应用程序对电量的消耗需求也越来越多,并且在一直在移动终端的后台运行,导致移动终端无法正常进入休眠状态,从而增加了功耗。但是用户不使用移动终端时,才会让移动终端进入休眠状态,后台运行的各种应用程序不仅使得移动终端无法正常地进入休眠状态,还占用了大量的内存资源,增加了大量无效的功能消耗。这造成了移动终端的电量无法支撑移动终端长时间的使用,电量不足降低了移动终端的续航能力,从而给用户的使用体验造成了极大的伤害。技术实现要素:本发明的主要目的在于提供一种终端功耗控制方法、移动终端及计算机可读存储介质,旨在解决移动终端后台应用程序增加大量无效功耗导致续航能力低下的技术问题。为实现上述目的,本发明实施例提供一种终端功耗控制方法,所述终端功耗控制方法包括:获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。可选地,所述将目标应用所调用的即时唤醒函数转换为非即时唤醒函数的步骤之后还包括:获取目标应用所调用的非即时唤醒函数的参数值;当检测到目标应用调用多个参数值相同的非即时唤醒函数时,将多个参数值相同的非即时唤醒函数合并为一个非即时唤醒函数。可选地,所述终端功耗控制方法包括:当检测到目标应用所调用的非即时唤醒函数申请唤醒锁时,拒绝非即时唤醒函数的申请请求;记录目标应用所调用的非即时唤醒函数的申请请求,并加入到拒绝申请列表中。可选地,所述终端功耗控制方法包括:当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单;当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数正在申请唤醒锁时,关闭该目标应用申请唤醒锁的申请权限。可选地,所述当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单的步骤之后还包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁。可选地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,基于唤醒锁设置预设唤醒时间;当待检测应用基于唤醒锁的运行时间大于预设唤醒时间时,释放所述唤醒锁。可选地,所述当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间的步骤包括:当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端休眠状态期间时,将非即时唤醒函数按照优先级从高到低进行排序,获得排序列表;将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间;当移动终端从休眠状态转换为非休眠状态时,基于排序列表控制目标应用调用并执行非即时唤醒函数对应的功能。可选地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤之后还包括:显示当前所释放的唤醒锁以及对应的目标应用的释放信息。本发明还提供一种移动终端,所述移动终端包括:存储器、处理器,通信总线以及存储在所述存储器上的终端功耗控制程序,所述通信总线用于实现处理器与存储器间的通信连接;所述处理器用于执行所述终端功耗控制程序,以实现以下步骤:获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。可选地,所述将目标应用所调用的即时唤醒函数转换为非即时唤醒函数的步骤之后还包括:获取目标应用所调用的非即时唤醒函数的参数值;当检测到目标应用调用多个参数值相同的非即时唤醒函数时,将多个参数值相同的非即时唤醒函数合并为一个非即时唤醒函数。可选地,所述终端功耗控制方法包括:当检测到目标应用所调用的非即时唤醒函数申请唤醒锁时,拒绝非即时唤醒函数的申请请求;记录目标应用所调用的非即时唤醒函数的申请请求,并加入到拒绝申请列表中。可选地,所述终端功耗控制方法包括:当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单;当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数正在申请唤醒锁时,关闭该目标应用申请唤醒锁的申请权限。可选地,所述当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单的步骤之后还包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁。可选地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,基于唤醒锁设置预设唤醒时间;当待检测应用基于唤醒锁的运行时间大于预设唤醒时间时,释放所述唤醒锁。可选地,所述当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间的步骤包括:当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端休眠状态期间时,将非即时唤醒函数按照优先级从高到低进行排序,获得排序列表;将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间;当移动终端从休眠状态转换为非休眠状态时,基于排序列表控制目标应用调用并执行非即时唤醒函数对应的功能。可选地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤之后还包括:显示当前所释放的唤醒锁以及对应的目标应用的释放信息。此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行以用于:获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。本发明的技术方案中,首先获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;然后将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;最后当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。本发明将即时唤醒函数转换为非即时唤醒函数,以保障移动终端在休眠状态下不会被唤醒,而是将碎片化的非即时唤醒函数集中在移动终端从休眠状态被唤醒时统一执行,从而杜绝了频繁将移动终端从休眠状态中唤醒的现象造成的电量消耗,提高了移动终端的续航能力,延长了移动终端的待机使用时间,进而改善用户的使用体验。附图说明图1为本发明各个实施例的一种移动终端的硬件结构示意图;图2为本发明实施例提供的一种通信网络系统架构图;图3本发明第一实施例的场景示意图;图4本发明第三实施例的场景示意图;图5为本发明终端功耗控制方法第一实施例的流程示意图;图6为本发明终端功耗控制方法第二实施例的流程示意图;图7为本发明终端功耗控制方法第三实施例的流程示意图;图8为本发明终端功耗控制方法第四实施例的流程示意图;图9为本发明终端功耗控制方法第五实施例的流程示意图;图10为本发明终端功耗控制方法第六实施例的流程示意图;图11为本发明终端功耗控制方法第七实施例的流程示意图;图12为本发明终端功耗控制方法第八实施例的流程示意图;图13为本发明实施例方法涉及的硬件运行环境的设备结构示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:rf(radiofrequency,射频)单元101、wifi模块102、音频输出单元103、a/v(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图1对移动终端的各个部件进行具体的介绍:射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于gsm(globalsystemofmobilecommunication,全球移动通讯系统)、gprs(generalpacketradioservice,通用分组无线服务)、cdma2000(codedivisionmultipleaccess2000,码分多址2000)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、td-scdma(timedivision-synchronouscodedivisionmultipleaccess,时分同步码分多址)、fdd-lte(frequencydivisionduplexing-longtermevolution,频分双工长期演进)和tdd-lte(timedivisionduplexing-longtermevolution,分时双工长期演进)等。wifi属于短距离无线传输技术,移动终端通过wifi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了wifi模块102,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或wifi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。a/v输入单元104用于接收音频或视频信号。a/v输入单元104可以包括图形处理器(graphicsprocessingunit,gpu)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或wifi模块102进行发送。麦克风1042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风1042接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。麦克风1042可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1061。用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。处理器110是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的lte系统,该lte系统包括依次通讯连接的ue(userequipment,用户设备)201,e-utran(evolvedumtsterrestrialradioaccessnetwork,演进式umts陆地无线接入网)202,epc(evolvedpacketcore,演进式分组核心网)203和运营商的ip业务204。具体地,ue201可以是上述终端100,此处不再赘述。e-utran202包括enodeb2021和其它enodeb2022等。其中,enodeb2021可以通过回程(backhaul)(例如x2接口)与其它enodeb2022连接,enodeb2021连接到epc203,enodeb2021可以提供ue201到epc203的接入。epc203可以包括mme(mobilitymanagemententity,移动性管理实体)2031,hss(homesubscriberserver,归属用户服务器)2032,其它mme2033,sgw(servinggateway,服务网关)2034,pgw(pdngateway,分组数据网络网关)2035和pcrf(policyandchargingrulesfunction,政策和资费功能实体)2036等。其中,mme2031是处理ue201和epc203之间信令的控制节点,提供承载和连接管理。hss2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过sgw2034进行发送,pgw2035可以提供ue201的ip地址分配以及其它功能,pcrf2036是业务数据流和ip承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。ip业务204可以包括因特网、内联网、ims(ipmultimediasubsystem,ip多媒体子系统)或其它ip业务等。虽然上述以lte系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于lte系统,也可以适用于其他无线通信系统,例如gsm、cdma2000、wcdma、td-scdma以及未来新的网络系统等,此处不做限定。基于上述移动终端硬件结构以及通信网络系统,提出本发明方法各个实施例。本发明提供一种终端功耗控制方法,在终端功耗控制方法第一实施例中,参照图5,所述终端功耗控制方法包括:步骤s10,获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;步骤s20,将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当移动终端处于运行状态中时,内存中运行着多种应用软件,移动终端能够实时监测内存中正在运行的所有应用。所有待检测应用在正常运行期间会频繁地调用唤醒函数,而唤醒函数为待检测应用的进程设置定时器,当定时器达到指定的时间时,会向指定进程发送触发信息,以触发激活相应的应用功能。唤醒函数一般分为两种:即时唤醒函数和非即时唤醒函数。即时唤醒函数能够唤醒休眠状态下的移动终端,从而运行相应的程序;非即时唤醒函数只会在移动终端正常运行或待机状态下运行,而在休眠状态下会被延迟到移动终端被唤醒至正常运行或待机状态下才开始运行。也就是说,即时唤醒函数会主动唤醒休眠状态下的移动终端,从而在移动终端的后台中静默运行,而这种后台运行现象便是对移动终端电量无效消耗的原因。由于有些唤醒函数当前并不执行,当一旦满足唤醒函数的触发条件,唤醒函数将被激活,并且被激活的唤醒函数可能会启动相应的功能或应用。而判断是否满足触发条件的前提是唤醒函数被成功调用。有些唤醒函数当前情况下不执行,而是静默运行在后台等待被激活。而未被调用的唤醒函数不在终端后台运行,也就不会激活和/或启动其他功能应用。在现实生活中,有些待检测应用的即时唤醒函数理论上可以被转换为非即时唤醒函数,但是转换后可能会带来一些重要的实时信息无法及时反馈,因此需要对部分即时唤醒函数进行保留。因此,本实施例设置了白名单,所述白名单中包含了那些可以被转换,但转换为非即时唤醒函数之后就无法发挥其真正功用的即时唤醒函数所对应的待检测应用,即需要被保护的待检测应用,其所调用的即时唤醒函数不允许被转换为非即时唤醒函数。白名单可以是移动终端的生产厂家预设的,并随着系统组件的更新而更新;或者可以用户根据实际情况进行自主设置。本实施例将终端中当前正在运行的待检测应用通过预设的白名单进行筛选,对白名单当中的待检测应用进行保护,而不在白名单之中的待检测应用确定为需要进行函数转换的目标应用。由于待检测应用控制即时唤醒函数的调用,通过预设的白名单,可以间接控制目标应用对所有被调用的即时唤醒函数的调用,将白名单上记录的待检测应用筛选出来,而其他未被白名单筛选过滤出来的待检测应用,即被默认为需要进行函数转换的目标应用。例如,闹钟应用调用的便是即时唤醒函数,闹钟应用的功能在于及时提醒用户时间点,假设将闹钟应用调用的即时唤醒函数转换为非即时唤醒函数,那么当移动终端进入到休眠状态时,闹钟应用将失去其功能实用性,没有任何提醒功能,等到移动终端被唤醒时,闹钟应用所规定的闹钟时间点可能与当前时间点相去甚远。因此,像闹钟应用具有实时效用的功能需要进行保护,即作为白名单中的受保护应用,避免其所调用的即时唤醒函数被转为非即时唤醒函数。获取目标应用之后,将目标应用所调用的即时唤醒函数转换为非即时唤醒函数。该步骤的作用在于,非即时唤醒函数在休眠状态下是不会启动的,也就无法将移动终端从休眠状态下唤醒,除非用户主动去唤醒移动终端,才会正常执行非即时唤醒函数。具体地,参照图3,应用a和应用b作为待检测应用,应用a调用了即时唤醒函数a,应用b调用了即时唤醒函数b1和非即时唤醒函数b2;若白名单中的受保护应用为应用b,那么移动终端将应用a确定为目标应用,而应用b则不作处理,并对应用a进行函数转换。其效果如下:由于应用b为受保护应用,移动终端对应用b不作任何处理,因此应用b所调用的即时唤醒函数b1和非即时唤醒函数b2不发生任何改变,而应用a作为目标应用,其所调用的即时唤醒函数a将被移动终端转化为非即时唤醒函数a’。步骤s30,当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。当目标应用调用非即时唤醒函数时,即使移动终端在休眠状态下也会被即时唤醒函数唤醒,一般是短信,通话,即时通讯等等应用,这些应用会被放置在白名单中,而像系统数据更新,软件新版本更新,资讯信息推送等一些非紧急状态下的通讯形式会通过目标应用调用非即时唤醒函数,或者在目标应用调用即时唤醒函数后被转换为非即时唤醒函数,非即时唤醒函数的功能便是当定时器计时功能达到规定时间时,不主动去唤醒处于休眠状态下的移动终端,而会将本应响应的唤醒功能延迟,从而不唤醒休眠状态下的移动终端,防止打断移动终端的休眠状态,尽可能地保持移动终端的电量消耗不增加。只有在移动终端通过用户主动唤醒或者被白名单中的应用调用的即时唤醒函数唤醒时,才会正常执行非即时唤醒函数。这样可以将所有碎片化的非即时唤醒函数统一在移动终端被唤醒激活的待机状态或正常运行状态下集中运行或处理,从而防止移动终端被频繁地激活触发。为辅助理解本实施例的技术方案,以下将通过具体的例子进行解释说明:移动终端搭载了操作系统,而操作系统在每隔一段时间之后总会接收到服务器推送的系统更新数据包。这种更新推送机制的底层设计实现便是基于系统应用所调用的即时唤醒函数。通过即时唤醒函数的定时器设置一个规定时间,每隔规定时间,当即时唤醒函数达到唤醒时间点时,移动终端便与服务器进行连接,获取系统更新数据包的推送信息。假设用户没有手动关闭这种推送设置,那么移动终端即使进入了休眠状态,也会在系统应用所调用的即时唤醒函数达到唤醒时间点时,唤醒休眠状态的移动终端,并留在后台静默运行,从而增加对移动终端的功耗。而将即时唤醒函数转换为非即时唤醒函数之后,移动终端进入休眠状态,即使被调用的非即时唤醒函数的定时器设置有相应的唤醒时间点,也不会在休眠状态下启动;也就是说,非即时唤醒函数被延迟而不会终止移动终端的休眠状态,也就不会与服务器连接,获取系统更新数据包的推送信息。在这整个过程中,目标应用的非即时唤醒函数的唤醒时间点即使处于移动终端的休眠状态期间,也会被延迟到移动终端被重新唤醒期间。也就是说,目标应用的非即时唤醒函数只会在移动终端处于待机状态或者正常运行状态下才会被执行,即只有移动终端被用户或其他方式唤醒进行待机状态或正常运行状态时,非即时唤醒函数才得以执行。当然,以上仅为举例说明,系统更新通知只是其中一个案例,还可以包括软件版本更新,天气预报更新等等一系列同等技术原理的案例,本实施例的技术方案包括但不限于以上所述的例子。本发明的技术方案中,首先获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;然后将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;最后当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。本发明将即时唤醒函数转换为非即时唤醒函数,以保障移动终端在休眠状态下不会被唤醒,而是将碎片化的非即时唤醒函数集中在移动终端从休眠状态被唤醒时统一执行,从而杜绝了频繁将移动终端从休眠状态中唤醒的现象造成的电量消耗,提高了移动终端的续航能力,延长了移动终端的待机使用时间,进而改善用户的使用体验。进一步地,在本发明终端功耗控制方法第一实施例的基础上,提出终端功耗控制方法第二实施例,参照图6,所述第二实施例与第一实施例之间的区别在于,所述将目标应用所调用的即时唤醒函数转换为非即时唤醒函数的步骤之后还包括:步骤s40,获取目标应用所调用的非即时唤醒函数的参数值;步骤s50,当检测到目标应用调用多个参数值相同的非即时唤醒函数时,将多个参数值相同的非即时唤醒函数合并为一个非即时唤醒函数。在第一实施例的技术方案中,即时唤醒函数转换为非即时唤醒函数,能够减少无谓的电量消耗,但存在一个问题,即非即时唤醒函数在移动终端被唤醒进入待机状态或正常运行状态时,原先在休眠状态应该被执行的多个非即时唤醒函数会在移动终端进入待机状态或正常运行状态时,同步执行;而这之中,多个非即时唤醒函数可能对用户而言是同样的功能,但却提示了多次。例如,假设用户设置了5个日历提示消息,分别在8:00,8:15,8:30,8:45,9:00等5个时间点进行提示,而移动终端将这5个日历提示消息对应的即时唤醒函数转换为非即时唤醒函数后,在7:00到9:00这个时间区间处于休眠状态中。那么当移动终端在9:00的时间点之后,5个日历提示消息对应的非即时唤醒函数将同时响应,而用户需要逐个进行释放关闭。以上操作方式过于繁琐,本实施例提供一种新的方案,先获取所有非即时唤醒函数的参数值,所述参数值指的是唤醒函数的对象依据。具体地,参数值代表了唤醒函数指代的对象类型,假设当前参数值有1,2,3三个,唤醒函数生成了4个对象,其参数值分别为1,2,1,3。那么参数值为1的对象一共有2个,参数值为2和3的对象分别有1个。参数值相同即代表着对应的唤醒函数的属性相同,只是对象不同而言,反映到具体的效果中可以是非即时唤醒函数一共有三种效果,参数值为1的代表了系统版本更新,参数值为2的代表了短信提醒,参数值为3的代表了闹钟,其中参数值为1的两个不同版本的系统更新对应的唤醒函数对象会在移动终端中连续提醒两次,用户在关闭第一个系统更新时还需要关闭第二个系统更新。本实施例将两个或两个以上的唤醒函数中参数值相同的合并成为一个,这样移动终端就只会提醒一次,而不会连续提醒。进一步地,在本发明终端功耗控制方法第二实施例的基础上,提出终端功耗控制方法第三实施例,参照图7,所述第三实施例与第二实施例之间的区别在于,所述终端功耗控制方法包括:步骤s60,当检测到目标应用所调用的非即时唤醒函数申请唤醒锁时,拒绝非即时唤醒函数的申请请求;步骤s70,记录目标应用所调用的非即时唤醒函数的申请请求,并加入到拒绝申请列表中。在移动终端中,目标应用所调用的非即时唤醒函数会自主申请唤醒锁,以达到锁定本身而不被中断。在本实施例中,移动终端的目标应用均拥有调取唤醒锁的权限。所述唤醒锁指的是将目标应用锁定防止被释放关闭所施加于目标应用的程序保护锁。例如,当移动终端中的内存清理机制正常执行时,会通过非即时唤醒函数申请唤醒锁,锁定当前所运行的功能,以保持移动终端不进入休眠状态,从而一次性在后台执行完毕。而一般这个执行过程的时间段都比较长,这样会使得移动终端一直在后台消耗电量,降低移动终端的续航能力。本实施例对当前所有目标应用进行监测。当检测到目标应用调用的非即时唤醒函数申请对应的唤醒锁时,证明当前目标应用有循环执行其功能的嫌疑,这样会无谓地消耗掉移动终端的电量。具体地,参照图4,假设a应用为目标应用,目标应用a调用非即时唤醒函数申请了唤醒锁,并一直在移动终端后台中上传实时的用户操作行为数据。那么目标应用a上传用户操作行为数据的功能对移动终端而言属于无谓的功能,且增加了对移动终端电量的消耗,很大程度降低了移动终端的续航能力。因此,在检测到目标应用a申请唤醒锁时,直接拒绝该申请请求,不赋予目标应用a上传数据的前提条件,使得移动终端在经过一段时间后能够正常地进入休眠状态,从而终止目标应用a上传数据的功能,直到移动终端从休眠状态中被唤醒。并且,在拒绝目标应用a的申请请求后,将目标应用a申请唤醒锁的申请请求记录下来,并加入到拒绝唤醒列表中,以便下次目标应用a再次申请唤醒锁时,直接主动拒绝,无需判断是否是什么应用的什么唤醒函数。进一步地,在本发明终端功耗控制方法第三实施例的基础上,提出终端功耗控制方法第四实施例,参照图8,所述第四实施例与第三实施例之间的区别在于,所述终端功耗控制方法包括:步骤s80,当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单;步骤s90,当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数正在申请唤醒锁时,关闭该目标应用申请唤醒锁的申请权限。用户可通过自主防御的方式对移动终端上的应用进行权限限制。由于所有正在运行的待检测应用均可以通过调用非即时唤醒函数以申请对应的唤醒锁,故在非即时唤醒函数申请唤醒锁时再进行拒绝属于被动式的防御措施,这样的实施方式效率较低。本实施例提供一种自定义机制,通过用户自定义编辑选择的操作,将想要禁止的待检测应用预先筛选出来,被筛选出来的待检测应用是能够通过非即时唤醒函数来申请唤醒说的应用。通过预先的选择筛选,获取到禁止申请唤醒锁的待检测应用的禁止申请名单,再基于该禁止申请名单,一旦检测到移动终端中存在与禁止申请名单相匹配的待检测应用正在执行申请唤醒锁的功能,则直接关闭该待检测应用对唤醒锁的申请权限。这样用户可以设置能够被哪些待检测应用申请调用,而哪些不可以待检测应用不可以调用。通过自主设置禁止申请名单,规定哪些待检测应用可以申请,哪些不可以申请,这样更灵活地处理,不必受限于既有的规则,即可在源头上直接杜绝应用随意申请唤醒锁的情况发生。进一步地,在本发明终端功耗控制方法第三实施例的基础上,提出终端功耗控制方法第五实施例,参考图9,所述第五实施例与第三实施例之间的区别在于,所述当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单的步骤之后还包括:步骤s100,当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁。假设移动终端没有完全禁止掉禁止申请名单中的待检测应用,例如待检测应用的权限过大,未能将其申请请求禁止掉,导致禁止申请名单中的待检测应用成功申请到唤醒锁,则将当前待检测应用成功申请到唤醒锁释放掉,以进一步落实规范禁止申请名单的功能。本实施例的技术方案重点在于,将权限较大或者逃过本发明中拒绝或禁止非即时唤醒函数申请唤醒锁机制的待检测应用重新进行修正到正确的流程上,避免移动终端再次被消耗掉过多的电量。进一步地,在本发明终端功耗控制方法第五实施例的基础上,提出终端功耗控制方法第六实施例,参照图10,所述第六实施例与第五实施例之间的区别在于,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤包括:步骤s101,当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,基于唤醒锁设置预设唤醒时间;步骤s102,当待检测应用基于唤醒锁的运行时间大于预设唤醒时间时,释放所述唤醒锁。假设禁止申请名单中的待检测应用基于非即时唤醒函数成功地申请到唤醒锁时,便给该待检测应用设置一个预设时间。移动终端实时检测该待检测应用的运行时间,一旦该待检测应用在唤醒锁的基础上的运行时间超过预设唤醒时间,则证明该待检测应用申请唤醒锁的时间过长,严重影响移动终端的续航能力,需要将该唤醒锁释放出来。具体地,与禁止申请名单相匹配的待检测应用调用非即时唤醒函数申请到唤醒锁之后,必须在本实施例中预设的唤醒时间内运行,作为待检测应用执行其功能的缓冲时间,待检测应用可以利用预设唤醒时间的时间段,执行完其本身的应用功能。而一旦待检测应用的运行时间大于预设唤醒时间时,为保障移动终端的续航能力,则需要将当前待检测应用申请的唤醒说释放掉。进一步地,在本发明终端功耗控制方法第一实施例的基础上,提出终端功耗控制方法第七实施例,参照图11,所述第七实施例与第一实施例之间的区别在于,所述当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间的步骤包括:步骤s31,当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端休眠状态期间时,将非即时唤醒函数按照优先级从高到低进行排序,获得排序列表;步骤s32,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间;步骤s33,当移动终端从休眠状态转换为非休眠状态时,基于排序列表控制目标应用调用并执行非即时唤醒函数对应的功能。本实施例主要是规范移动终端从休眠状态中被唤醒后,目标应用所调用的非即时唤醒函数的运行状况。正常情况下,移动终端从休眠状态转换为非休眠状态时,原先所有被延迟运行的非即时唤醒函数将会同步运行,这样将导致移动终端在短时间之内同时响应大量的非即时唤醒函数对应的功能,给移动终端造成较大的数据处理负担,从而造成较大的功耗,进而降低续航能力。本实施例通过对非即时唤醒函数进行分析识别,将本应在休眠状态的时间段内运行的非即时唤醒函数,筛选出来,将其唤醒时间点延迟至移动终端从休眠状态转换为非休眠状态期间,并按照非即时唤醒函数的优先级从高到低进行排列。而在移动终端从休眠状态转换为非休眠状态时,目标应用调用的所有非即时唤醒函数被激活,根据优先级排列的排序列表依次调用执行非即时唤醒函数的功能。也就是说,移动终端从休眠状态中被唤醒时,在这段休眠状态的时间里应该被调用执行的非即时唤醒函数不会同步运行,而是根据优先级排序列表,从优先级最高的非即时唤醒函数开始运行,直到排序列表中的非即时唤醒函数被依次成功运行。利用循环渐进的方式,缓解移动终端需要突然之间处理运行大量非即时唤醒函数造成大量的功耗,降低对移动终端的功耗,侧面提高移动终端的续航能力。进一步地,在本发明终端功耗控制方法第五实施例的基础上,提出终端功耗控制方法第八实施例,参照图12,所述第八实施例与第五实施例之间的区别在于,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤之后还包括:步骤s110,显示当前所释放的唤醒锁以及对应的目标应用的释放信息。释放待检测应用申请的唤醒锁之后,向用户显示当前释放掉的唤醒锁以及对应的待检测应用的信息,以告知用户,用户可基于当前的提示信息进行禁止申请名单的优化和编辑。参照图13,图13是本发明实施例方法涉及的硬件运行环境的设备结构示意图。本发明实施例终端可以是pc,也可以是智能手机、平板电脑、电子书阅读器、mp3(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)播放器、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面3)播放器、便携计算机等终端设备。如图13所示,该移动终端可以包括:处理器1001,例如cpu,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。可选地,该移动终端还可以包括用户接口、网络接口、摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。用户接口可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。本领域技术人员可以理解,图13中示出的移动终端结构并不构成对移动终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图13所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及终端功耗控制程序。操作系统是管理和控制移动终端硬件和软件资源的程序,支持终端功耗控制程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与移动终端中其它硬件和软件之间通信。在图13所示的移动终端中,处理器1001用于执行存储器1005中存储的终端功耗控制程序,实现以下步骤:获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。进一步地,所述将目标应用所调用的即时唤醒函数转换为非即时唤醒函数的步骤之后还包括:获取目标应用所调用的非即时唤醒函数的参数值;当检测到目标应用调用多个参数值相同的非即时唤醒函数时,将多个参数值相同的非即时唤醒函数合并为一个非即时唤醒函数。进一步地,所述终端功耗控制方法包括:当检测到目标应用所调用的非即时唤醒函数申请唤醒锁时,拒绝非即时唤醒函数的申请请求;记录目标应用所调用的非即时唤醒函数的申请请求,并加入到拒绝申请列表中。进一步地,所述终端功耗控制方法包括:当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单;当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数正在申请唤醒锁时,关闭该目标应用申请唤醒锁的申请权限。进一步地,所述当接收到用户的编辑操作时,获取禁止待检测应用申请唤醒锁的禁止申请名单的步骤之后还包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁。进一步地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤包括:当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,基于唤醒锁设置预设唤醒时间;当待检测应用基于唤醒锁的运行时间大于预设唤醒时间时,释放所述唤醒锁。进一步地,所述当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间的步骤包括:当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端休眠状态期间时,将非即时唤醒函数按照优先级从高到低进行排序,获得排序列表;将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间;当移动终端从休眠状态转换为非休眠状态时,基于排序列表控制目标应用调用并执行非即时唤醒函数对应的功能。进一步地,所述当检测到与禁止申请名单相匹配的待检测应用所调用的非即时唤醒函数成功申请唤醒锁时,释放所述唤醒锁的步骤之后还包括:显示当前所释放的唤醒锁以及对应的目标应用的释放信息。本发明移动终端的具体实施方式与上述终端功耗控制方法各实施例基本相同,在此不再赘述。本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于:获取移动终端中所有正在运行的待检测应用,并基于预设的白名单,将不在白名单中的待检测应用确定为目标应用;将目标应用所调用的即时唤醒函数转换为非即时唤醒函数;当目标应用所调用的非即时唤醒函数的唤醒时间点处于移动终端的休眠状态期间时,将唤醒时间点延迟至移动终端结束休眠状态后的非休眠状态期间。本发明计算机可读存储介质具体实施方式与上述终端功耗控制方法和移动终端各实施例基本相同,在此不再赘述。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1