一种用于移动终端的唤醒锁释放方法和装置
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种用于移动终端的唤醒锁释放方法和装置。
背景技术
随着互联网的发展和移动通信网络的发展,同时也伴随着终端的处理能力和存储能力的迅猛发展,海量的应用程序得到了迅速传播和使用。以智能手机为例,智能手机出货前会安装一些基本应用,以满足人们的基本需求,如提供音频播放器供用户听音乐、提供视频播放器供人们观看视频等。同时用户还会安装一些第三方应用以满足其特定需求,如用户想网上购物,则安装购物应用,想玩某款游戏,则自己安装相应的游戏应用。
这些第三方应用虽然大大满足了人们的需求,但也带来了困扰。这些第三方应用经常会因为异常持有唤醒锁导致智能手机电量的大量消耗。
发明内容
本发明提供一种用于移动终端的唤醒锁释放方法和装置,以及时释放处于异常持有状态的唤醒锁,避免手机电量的大量消耗,进而节省手机电量,增加待机时间,提高用户体验。
第一方面,本发明实施例提供了一种用于移动终端的唤醒锁释放方法,所述方法具体包括:
获取移动终端内唤醒锁的状态信息;
如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间;
根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;
若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
第二方面,本发明实施例还提供了一种用于移动终端的唤醒锁释放装置,该装置具体包括:
状态信息获取模块,用于获取移动终端内唤醒锁的状态信息;
运行时间获取模块,用于如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间;
模拟耗电量计算模块,用于根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;
唤醒锁释放模块,用于若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
第三方面,本发明实施例还提供了一种终端,所述终端包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所述的用于移动终端的唤醒锁释放方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所述的移动终端的唤醒锁释放方法。
本实施例的技术方案,通过根据移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;,解决了移动终端因异常持有唤醒锁导致智能手机电量的大量消耗的问题,避免手机电量的大量消耗,进而节省手机电量,增加待机时间,提高用户体验。
附图说明
图1是本发明实施例一中的一种用于移动终端的唤醒锁释放方法流程图;
图2是本发明实施例二中的一种用于移动终端的唤醒锁释放方法流程图;
图3是本发明实施例三中的一种用于移动终端的唤醒锁释放装置结构示意图;
图4为本发明实施例四提供的一种终端的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种用于移动终端的唤醒锁释放方法流程图,本实施例可适用于唤醒锁异常使用的情况,该方法可以由一种用于移动终端的唤醒锁释放装置来执行,具体包括如下步骤:
S110、获取移动终端内唤醒锁的状态信息。
其中,移动终端可以是智能手机、平板电脑、便携式电子邮件装置、电子书、手持游戏机和/或游戏控制器、笔记本电脑、上网本、手持电子装置,智能穿戴装置,等等。本发明涵盖任何合适的移动智能设备。
所述唤醒锁控制所述移动终端中控制应用处理器的使用状态,进而控制移动终端中其他耗电组件的使用状态。唤醒锁的状态信息包括持有状态和释放状态。进一步的,所述移动终端内可同时运行多个唤醒锁,所述多个唤醒锁的种类可以是不同的,不同种类的唤醒锁所改变的耗电组件的使用状态不同。当移动终端中至少一个唤醒锁的状态信息为持有状态时,移动终端中的应用处理器则处于运行状态,与该唤醒锁对应控制的耗电组件的使用状态也处于耗电状态。当所有唤醒锁的状态信息均为释放状态时,应用处理器会进入到休眠状态,则移动终端中所有耗电组件都不会耗电(除了移动终端中的基带处理器会消耗较少的电量以维持来电和短信等必须的通信)。
示例性的,例如标记值为“PARTIAL_WAKE_LOCK”种类的唤醒锁处于持有状态时,所述移动终端的CPU处于开启状态,屏幕处于关闭状态,键盘处于关闭状态;而标记值为“FULL_WAKE_LOCK”种类的唤醒锁处于持有状态时,所述移动终端的CPU处于开启状态,屏幕处于调亮状态,键盘也处于调亮状态。
具体的,唤醒锁的状态信息可以通过移动终端内存储的注册文件获取到,注册文件中记录有全部的使用唤醒锁的服务和驱动程序。具体获取过程中,唤醒锁释放装置可以通过获取文件记录中所记录的唤醒锁服务名称和驱动程序名称对应的字符串,进而通过识别相应的字符串来获取唤醒锁的种类和状态信息。
S120、如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间。
其中,预设间隔时长可以由开发人员预先设定,本实施例中以每个预设间隔时间为单位,进行一次运行时间的统计,进而对比当前间隔时间内耗电组件的运行时间。
需要说明的是,可以将首个预设间隔时间内的运行时间,作为与后续预设间隔时间内耗电对比的参考数据,因此在首个预设间隔时间内可以不改变唤醒锁的运行状态。进一步需要说明的是,为了防止消耗过多电量,可以将每个预设间隔时间或首个预设间隔时间的时间长度设置尽可能短,优选的,本实施例中每个预设间隔时间或首个预设间隔时间的时间长度设置为10s。
本实施例在移动终端中存在至少一个处于持有状态的唤醒锁的前提下进行,在获取到唤醒锁的种类后,可以检测该种类的唤醒锁在持有状态下高耗能的耗电组件的种类,并分别检测对应耗电组件和耗能状态是否匹配。
具体的,由于耗电组件在正常工作状态下的功率相同,因此可以通过获取对应耗电组件的运行时间来确定耗电组件的耗能状态,进而快速确定耗电组件的耗能状态。
S130、根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量。
其中,所述标准电流值和耗电功率由开发人员预先检测得到,并存储到相应的配置文件中,在计算模拟耗电量的过程中,可以通过读取相应的配置参数来获取耗电组件的标准电流值和耗电功率。
所述模拟耗电量为移动终端中至少一个耗电组件的在预设间隔时长内所消耗的总电量。
具体的,模拟耗电量的计算过程中,可以首先根据各不同耗电组件正常运行状态下的耗电功率占总功率的比例,进而根据该比例、以及所述至少一个耗电组件在单位时间内运行对应的标准电流值计算所述移动终端在所述预设间隔时长内的模拟耗电量。
S140、若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
其中,所述基础耗电量为唤醒锁正常使用状态下所消耗最小电量,可选的性的,唤醒所的正常使用状态下CPU耗电组件作为支撑移动终端运行的基础组件,基础耗电量包括所述CPU耗电组件在所述运行时间内消耗的总电量。其中,所述CPU耗电组件包括应用处理器。
当模拟耗电量小于基础耗电量时,则表明所述唤醒锁的运行状态为异常持有状态,此时,可以释放唤醒锁,即将所述唤醒锁的状态从持有状态切换为释放状态。
本实施例的技术方案,通过根据移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量,进而根据所述模拟耗电量切换唤醒锁的运行状态,解决了移动终端因异常持有唤醒锁导致智能手机电量的大量消耗的问题,避免手机电量的大量消耗,进而节省手机电量,增加待机时间,提高用户体验。
实施例二
图2为本发明实施例二提供的一种用于移动终端的唤醒锁释放方法流程图,本实施例在上述实施例的基础上进一步说明模拟耗电量的计算过程,具体包括如下步骤:
S210、获取移动终端内唤醒锁的状态信息;
S220、如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间;
S230、根据所述至少一个耗电组件在单位时间内运行对应的耗电功率确定耗电组件的权值。
其中,所述权值用于表示各耗电组件消耗电能所占耗电总量的比例,具体的,所述权值可以根据各耗电组件在单位时间内运行对应的耗电功率分别占耗电功率之和的比例确定。
S240、据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和所述权值计算所述移动终端在所述预设间隔时长内的模拟耗电量。
具体的,模拟耗电量包括移动终端中各耗电组件的在预设间隔时长内所消耗电量与对应权值乘积的总和。所述各耗电组件的在预设间隔时长内所消耗电量根据耗电组件的在预设间隔时长内的运行时间和标准电流值确定。
其中,所述移动终端中至少一个耗电组件包括CPU耗电组件、移动数据网络耗电组件、Wifi网络耗电组件、蓝牙耗电组件、外围传感器耗电组件和音频器件耗电组件。
本实施例中所述CPU耗电组件包括应用处理器和基带处理器,所述基带处理器用于处理来电和短信等必须的通信,该过程中会消耗较少的电量。
S250、若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
本实施例的技术方案,通过使用根据各耗电组件消耗电能所占耗电总量比例得到的权值计算计算所述移动终端在所述预设间隔时长内的模拟耗电量,使得模拟耗电量的计算结果更加准确,计算操作更加便捷。
实施例三
图3为本发明实施例三提供的一种用于移动终端的唤醒锁释放装置结构示意图,如图3所示,所述移动终端的唤醒锁释放装置包括:状态信息获取模块 310、运行时间获取模块320、模拟耗电量计算模块330和唤醒锁释放模块340。
其中,状态信息获取模块310,用于获取移动终端内唤醒锁的状态信息;
运行时间获取模块320,用于如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间;
模拟耗电量计算模块330,用于根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;
唤醒锁释放模块340,用于若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
本实施例的技术方案,通过根据移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;,解决了移动终端因异常持有唤醒锁导致智能手机电量的大量消耗的问题,避免手机电量的大量消耗,进而节省手机电量,增加待机时间,提高用户体验。
在上述实施例的基础上,所述模拟耗电量计算模块包括:
权值确定单元,用于根据所述至少一个耗电组件在单位时间内运行对应的耗电功率确定耗电组件的权值;
模拟耗电量计算单元,用于根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和所述权值计算所述移动终端在所述预设间隔时长内的模拟耗电量。
在上述实施例的基础上,所述移动终端中至少一个耗电组件包括CPU耗电组件、移动数据网络耗电组件、Wifi网络耗电组件、蓝牙耗电组件、外围传感器耗电组件和音频器件耗电组件。
在上述实施例的基础上,所述唤醒锁释放装置还包括:
循环模块,用于若所述耗电量大于或等于基础耗电量,则返回执行所述获取移动终端内唤醒锁的状态信息的操作。
本发明实施例所提供的用于移动终端的唤醒锁释放装置可执行本发明任意实施例所提供的用于移动终端的唤醒锁释放方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4为本发明实施例四提供的一种终端的结构示意图,如图4所示,该终端包括处理器40、存储器41、输入装置42和输出装置43;终端/中处理器40 的数量可以是一个或多个,图4中以一个处理器40为例;终端中的处理器40、存储器41、输入装置42和输出装置43可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的用于移动终端的唤醒锁释放方法对应的程序指令/模块(例如,用于移动终端的唤醒锁释放装置中的状态信息获取模块310、运行时间获取模块320、模拟耗电量计算模块330和唤醒锁释放模块 340)。处理器40通过运行存储在存储器41中的软件程序、指令以及模块,从而执行终端的各种功能应用以及数据处理,即实现上述的唤醒锁释放方法。
存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置42可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。输出装置43可包括显示屏等显示设备。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种用于移动终端的唤醒锁释放方法,该方法包括:
获取移动终端内唤醒锁的状态信息;
如果根据所述唤醒锁的状态信息确定所述唤醒锁的状态为持有状态,则获取所述移动终端中至少一个耗电组件在预设间隔时长内的运行时间;
根据所述移动终端中至少一个耗电组件的在预设间隔时长内的运行时间以及所述至少一个耗电组件在单位时间内运行对应的标准电流值和耗电功率计算所述移动终端在所述预设间隔时长内的模拟耗电量;
若所述模拟耗电量小于基础耗电量,则释放所述唤醒锁。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的用于移动终端的唤醒锁释放方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器 (Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。