智能终端及其能耗量化控制方法

文档序号:10474489阅读:423来源:国知局
智能终端及其能耗量化控制方法
【专利摘要】本发明公开一种智能终端能耗量化控制方法,包括如下步骤:接收指定了延长智能终端使用的具体时长参数的用户指令;向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据;基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据;根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。本发明的实施,使智能终端的电池续航时间管理进一步量化,便于用户有效进行续航控制。
【专利说明】
智能终端及其能耗量化控制方法
技术领域
[0001]本发明涉及智能终端节能技术,具体而言,本发明涉及一种智能终端及其能耗量化控制方法。
【背景技术】
[0002]由于电池技术的发展未能跟上智能终端的需求,智能终端的能耗控制显得非常重要。智能终端的能耗控制本身,不仅在于环保节能的社会意义方面,更为现实的,还在于智能终端的能耗控制关系到如何延长智能设备特别是采用了一体化封装技术智能设备的电池使用寿命,以及关系到每次充放电周期的续航时间的问题。可以说,智能终端的能耗控制的问题,一直是该领域较为突出的技术难题。
[0003]目前改善智能终端的能耗的问题的途径分硬件和软件两方面,硬件方面,通过提高单位体积内的电池(通常采用锂电池)容量来延长续航时间,软件方面,通过控制关闭用户闲置进程来减小耗电。在硬件规格既定的情况下,后一方式的有效实现显然更为重要。
[0004]现实中,多数智能终端安装有Android操作系统,Android 4.4以上的版本,本身即具有对每个进程的耗电量进行计算的功能。但Android本身加大了对这些系统数据的权限控制,以加强其安全性。而多数基于Android实现的应用程序,虽然具备控制进程开启或关闭以达到省电的能力,以及具备计算电量的能力,但由于其对剩余电量的计算方式较为机械简单,因此,往往未能准确地反映电池的剩余使用时间,多数类似应用,形同虚设。
[0005]因此可见,如何有效地对此类智能终端进行电量管理,以实现有效控制能耗的效果,具有较为重要的现实意义。

【发明内容】

[0006]本发明的目的在于针对以上存在的至少一方面不足,提供一种智能终端及其能耗量化控制方法。
[0007]为了实现该目的,本发明采取如下技术方案:
[0008]本发明的一种智能终端能耗量化控制方法,包括如下步骤:
[0009]接收指定了延长智能终端使用的具体时长参数的用户指令;
[0010]向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据;
[0011 ]基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据;
[0012]根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。
[0013]具体而言,所述接收指定了延长智能终端使用的具体时长的用户指令的步骤中,基于智能终端检测电池剩余电量低于预定值时,弹出告警界面以实现所述用户指令的接收。
[0014]较佳的,所述告警界面提供默认的所述具体时长参数,或提供用于用户自定义该具体时长参数的输入区域。
[0015]具体而言,所述向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据的步骤中,向系统提交的请求中包含用于对应读取系统的活动进程耗电量数据的系统权限请求指令或接口签名。
[0016]具体的,所述系统的活动进程耗电量数据包括每个活动进程的特征信息及其活动时长以及该时长范围内的总能耗。
[0017]具体而言,所述基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据的步骤中,先获取每个活动进程的所述特征信息、活动时长及总能耗,对应于每个活动进程,以其总能耗除以活动时长确定关联于所述特征信息的属于该活动进程的单位时间能耗。
[0018]较佳的,所述特征信息为相应的活动进程的进程ID。
[0019]具体而言,所述根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配的步骤,包括如下具体步骤:
[0020]确定所述的用于延长智能终端的使用时长的所述具体时长参数;
[0021]确定智能终端电池的剩余使用电量;
[0022]根据各活动进程的单位时间能耗,按照预定规则确定适于以所述具体时长参数的时间跨度消耗所述剩余使用电量的一组活动进程;
[0023]关闭该组活动进程之外的其余活动进程。
[0024]较佳的,所述剩余使用电量通过定时或不定时对智能终端电池的耗电量数据进行打点取样后统计更新而得。
[0025]具体的,所述的预定规则,是指根据为活动进程预分配的权重进行按序选用将保留的活动进程,同等条件下,权重较高的活动进程优先予以保留。
[0026]通常,系统的电话进程、短信息进程被赋予最高权重。
[0027]具体而言,所述接收指定了延长智能终端使用的具体时长参数的用户指令的步骤中,响应于所述用户指令,切换至预定用户界面以警示进入节电模式。
[0028]本发明提供的一种智能终端,包括:
[0029]交互单元,用于接收指定了延长智能终端使用的具体时长参数的用户指令;
[0030]读取单元,用于向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据;
[0031]计算单元,用于基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据;
[0032]控制单元,用于根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。
[0033]进一步,所述交互单元具体被配置为,基于智能终端检测电池剩余电量低于预定值时,弹出告警界面以实现所述用户指令的接收。
[0034]较佳的,所述告警界面提供默认的所述具体时长参数,或提供用于用户自定义该具体时长参数的输入区域。
[0035]进一步,所述读取单元被配置为,在向系统提交的请求中包含用于对应读取系统的活动进程耗电量数据的系统权限请求指令或接口签名。
[0036]较佳的,所述系统的活动进程耗电量数据包括每个活动进程的特征信息及其活动时长以及该时长范围内的总能耗。
[0037]进一步,所述计算单元被配置为,先获取每个活动进程的所述特征信息、活动时长及总能耗,对应于每个活动进程,以其总能耗除以活动时长确定关联于所述特征信息的属于该活动进程的单位时间能耗。
[0038]较佳的,所述特征信息为相应的活动进程的进程ID。
[0039]所述控制单元进一步包括:
[0040]时长确定模块,用于确定所述的用于延长智能终端的使用时长的所述具体时长参数;
[0041]余量确定模块,用于确定智能终端电池的剩余使用电量;
[0042]优选模块,用于根据各活动进程的单位时间能耗,按照预定规则确定适于以所述具体时长参数的时间跨度消耗所述剩余使用电量的一组活动进程;
[0043]清除模块,用于关闭该组活动进程之外的其余活动进程。
[0044]具体的,所述剩余使用电量通过定时或不定时对智能终端电池的耗电量数据进行打点取样后统计更新而得。
[0045]较佳的,所述的预定规则,是指根据为活动进程预分配的权重进行按序选用将保留的活动进程,同等条件下,权重较高的活动进程优先予以保留。
[0046]通常,系统的电话进程、短信息进程被赋予最高权重。
[0047]进一步,所述交互单元被配置为响应于所述用户指令,切换至预定用户界面以警示进入节电模式。
[0048]与现有技术相比较,本发明至少具有如下优点:
[0049]本发明通过更为符合安全规范的方式,读取系统的耗电量数据并对其进行统计学的计算,获得每个活动进程的精确的单位时间能耗数据,在这个基础上,最终根据用户指令而确定相匹配的活动进程杀灭方案,有效量化了电池数据管理,使用户可以按需设定智能终端的续航时间,进一步智能化地改善用户体验。进一步,本发明依据预定规则确定保留一组活动进程,将未能满足用户续航需求的活动进程及时杀灭,这种策略的运用,能够保证用户对智能终端的应用程序的使用需求,具有相当的节能效果。
[0050]概括而言,本发明的实施,使智能终端的电池续航时间管理进一步量化,便于用户有效进行续航控制。然而,书不尽言,本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
【附图说明】
[0051]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0052]图1为本发明的智能终端能耗量化控制方法的流程示意图;
[0053]图2为实施了本发明的控制方法的一个场景中的智能终端的告警界面示意图;
[0054]图3为实施了本发明的控制方法的一个场景中的智能终端的用于展示处于节电模块的用户界面示意图;
[0055]图4为本发明的控制方法的步骤S14的具体细节步骤的流程示意图;
[0056]图5为本发明的智能终端的结构示意图;
[0057]图6为本发明的智能终端的控制单元的具体结构示意图。
【具体实施方式】
[0058]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0059]本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“親接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0060]本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0061]本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communicat1ns Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Posit1ning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
[0062]如图1所示,本发明的一种智能终端能耗量化控制方法,包括如下步骤:
[0063]步骤Sll,接收指定了延长智能终端使用的具体时长参数的用户指令。
[0064]在一个依赖于智能终端例如智能手机实现的应用场景中,用户可以运行以本发明的控制方法实现的应用程序,即进入相应的主控制界面。该应用程序向系统注册一个服务进程,在后台自动运行,以便实现本发明的控制方法。通常采用两种触发方式以实所述用户指令的接收。触发方式之一是在所述的主控制界面中设置入口选项或虚拟按键,当用户触控该入口选项或虚拟按键时,便调出告警界面,在告警界面展示本机电池的耗电情况,并提供默认的所述具体时长参数,或者提供一个输入区域供用户自定义该具体时长参数最终由用户确定输入。触发方式之二是由所述后台自动运行的服务进程监测系统的耗电量数据,当检测到该电池的剩余电量或剩余使用时间低于预定值时,便弹出所述的告警界面,这时,在该告警界面中除展示上述的信息外,还可以进一步展示电池剩余电量百分比、依据目前运行的活动应用对电池的使用情况预估的剩余使用时间等信息。
[0065]作为一种优选的默认情况,如图2所示,本发明的应用程序可以在该告警界面上提供一个或多个参考值如“I小时”、“3小时”、“12小时”作为所述的具体时长参数的推荐量,如用户认可系统的推荐结果,只需选中相应的虚拟按键,确认“使用电量加油包”即可。用户执行上述操作后,本发明的应用程序便接收了相应的用户指令,确定了用于延长本智能终端使用的具体时长参数的具体数值。当用户执行所述的用户指令并被本发明的应用程序的进程接收之后,便自动调出另一活动组件,以显示至指示处于省电模式的预定的用户界面。在该预定用户界面中,可以如图3所示,仅提供电话、信息、退出等选项,控制用户调用其他应用程序,以确保满足用户的电量使用控制需求。
[0066]需要指出的是,所述告警界面可以弹出菜单的方式实现,例如通过Android的屏幕绘制函数绘制在屏幕上,当然,也可以是通过一个活动组件(Activity)来实现。具体可由本领域技术人员运用习知手段灵活确定。
[0067]步骤S12,向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据。
[0068]本发明的应用程序进程获取所述的用户指令后,作为安全防护的一环,需要向系统提交读取系统的活动进程耗电量数据的请求,以便通过系统鉴权后,获取相应的耗电量数据。对于Android系统而言,自Android 4.4版本以后,便具备自行统计各活动进程的电量使用情况的功能,这些数据并记载在相应的系统表格中,供经授权的访问使用。除此之外,对于一些改造自Android系统的派生操作系统而言,出于系统安全的目的,也可能加固了权限访问功能,因此,本发明考虑到这一因素,在此处执行向系统提交请求的步骤,以便顺利获取系统的耗电量数据。具体可参阅如下两种实现方案:
[0069]一种方案中,假定Android系统只能具有Root权限的操作开放所述的耗电量数据。这种情况下,此处向系统提交的请求,实质上是执行一个公知的SU提权操作,可能导致系统弹出提权询问窗口,或者依预审设置而直接通过这一提权操作,最终使得本发明的应用程序进程可以顺利读取系统记载的耗电量数据。
[0070]另一方案中,假定在Android系统的底层框架之上,架设有用于管理系统的资源接口访问权限的模块,这种情况下,当某应用程序进程欲调用耗电量数据时,通常由这种管理模块接收其请求,这一请求指令,实质上应是一种接口签名,是由本管理模块预先向该应用程序进程分配的,起到类似于令牌的作用。管理模块接收包含用于对应读取系统的活动进程耗电量数据的接口签名后,对该签名进行验证,验证通过后才向本发明的应用程序进程提供所述的由系统记载的耗电量数据。
[0071]当然,如果系统并未对读取耗电量数据做出限制,也将不必实施上述的鉴权过程,由本发明的应用程序进程提交请求便可直接读取系统的活动进程耗电量数据。
[0072]具体到Android系统的一个程序开发实例,所述的耗电量数据,主要指记载于智能终端存储设备上的电池消费日志。向系统请求读取耗电量数据,即指读取所述的电池消费日志。具体到程序开发时,读取手机上的电池消费日志,表现为向服务:com.android, server.am.BatteryStatsService:getService查询IBatteryStats接P,由此便可得到每一个Uid消费的电池数据,满足上述的需求。
[0073]可见,视系统的安全需求而定,可以通过多种相应的方式来向系统读取由系统记载的活动进程耗电量数据,以便后续据此进行节电控制。
[0074]步骤S13,基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据。
[0075]所述的活动进程耗电量数据,通常包括每个活动进程的特征信息及其活动时长,以及该时长范围内的总能耗。所述的特征信息,既可以是活动进程的进程ID(UID),也可以是其包名或其他唯一性特征,视系统的设计而定。所述的活动时长,是指活动进程进驻内存之后的活动时间长度,其与所述的总能耗之间具有对应关系,理论上,将总能耗除以相应的活动时长,便是相应的活动进程在单位时间长度内的单位时间能耗。
[0076]需要注意的是,在系统中,表达活动进程的总能耗的方式可以是电量单位mA,也可以是百分比单位,无论何种度量单位,均不影响本发明的实施。
[0077]诚然,系统记载的耗电量数据,一般还可以包括电池的当前剩余电量(或其百分比)、电池实际总容量、电池健康状态等信息。需要指出的是,由于电池会随着其充放电次数而降低其实际总容量,因此,计算剩余使用电量时,需要考虑到电池实际总容量的变化。通常,业内采用定时或不定时对电池的耗电量数据进行打点取样后,在考察电池在每个充放电周期被活动进程使用的情况的基础上,依据统计方式得出电池实际总容量,相应的,电池的剩余(使用)电量也会受该电池实际总容量的影响而得到更新。无论其过程如何灵活实现,其目的均是期望通过此处的处理,使系统所能提供的耗电量数据更为精准,在此基础上进行节电管理和控制,其效果更加明显。
[0078]步骤S14,根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。
[0079]如前所述的每个活动进程的单位时间能耗数据,可以被用来实现节电管理和控制,具体实现策略可以灵活变化,如图4所示,以下提供一种较具操作性的方式供参考:
[0080]步骤S141,确定所述的用于延长智能终端的使用时长的所述具体时长参数:
[0081]如前所述,本发明的应用程序进程已经获取了由用户指令指定的用于控制智能终端的使用时长的具体时长参数,在本步骤中,确定此一参数,表现在程序底层是获得这一参数的传值或者读取这一属性的相应数值,以便后续参与运算。
[0082 ]步骤S142,确定智能终端电池的剩余使用电量:
[0083]同理,如前所述的电池的剩余电量,是以打点方式重新校正后计算而得的剩余电量,在此处可以通过向系统读取耗电量数据后,从中获得相应的剩余使用电量,以便参与后续的运算。
[0084]步骤S143,根据各活动进程的单位时间能耗,按照预定规则确定适于以所述具体时长参数的时间跨度消耗所述剩余使用电量的一组活动进程:
[0085]如前所述,当前系统中运行的各个活动进程的单位时间能耗可以根据前面揭示的方式计算得出,且前述的用户指定的具体时长参数也已经确定,因此,只要依照预定规则,便可确定一组需要保留的活动进程。
[0086]这里所称的预定规则,是指根据为活动进程预分配的权重进行按序选用将保留的活动进程,同等条件下,权重较高的活动进程优先予以保留。例如,对于系统启动和运行所需的必要进程,可以赋予最高权重;对于系统所需的通信进程,如电话、短信等进程,可以赋予次高权重(也可以是最高权重);对于保障系统安全的进程,可以赋予更净高权重;对于其余第三方应用,可以依其重要性分别赋予不同的更低的权重。由此,系统的活动进程的权重便已被预先分配,一般以表格的形式存在智能终端中。
[0087]基于确定的上述信息,便可根据用户指定的所述具体时长参数,按照权重次序,先选定较高权重的一组活动进程,使得电池剩余电量与依据这组活动进程的每个活动进程单位时间能耗之和的比值等于或接近于的所述的具体时长参数,即可确定这组活动进程为保留活动进程。
[0088]当然,也可采用另一种策略,即优先考虑单位时间能耗较高的活动进程来计算电池剩余电量的剩余使用时长是否等于或接近于所述具体时长参数,当满足这一条件时,再排除其中权重较低的活动进程,而从其余活动进程中将权重较高的活动进程计入该组待保留活动进程中,再重新计算确定。
[0089]可见,可以有多种策略来确定一组适宜保留以使电池剩余使用时长与用户指定的具体时长参数相匹配的活动进程,本领域技术人员可以据本发明揭示的精神实质做出灵活的变通,而不影响本发明的实施。
[0090]步骤S144,关闭该组活动进程之外的其余活动进程:
[0091]当上述待保留的活动进程组已经确定之后,其余活动进程便意味着应当被关闭,清除出内存。因此,本发明在此处将请求系统关闭那些未进入待保留活动进程组的其余活动进程,并且在后续系统运行过程中,确保这些被关闭的活动进程不再自启动,以确保节电控制的目的。
[0092]需要指出的是,关闭某些活动进程以达到节电控制的目的,应做广义的理解,不仅包括独享虚拟机的进程,也包括对一些接口类进程的有利于改变电量消耗的控制设置。表现到系统可视化界面上,不仅包括一些后台驻留的活动进程不再出现在后台程序列表中,也包括诸如WiF1、蓝牙连接可能被关闭,以及包括屏幕亮度被调低或调为非自动等。具体到程序开发层面,可以通过调用系统的设置接口,写入一些配置,比如在低电量时关闭键盘音,锁屏提示音,触摸振动,键盘音等等各类开关;或者调用power服务设置屏幕亮度等。当然,调用系统服务接口通常需要较高权限,故而使用这些接口时,也可以采取前述的鉴权过程来辅助实现,以便实现更安全的节电控制效果。本领域技术人员应当知晓这些原理,从而对此处关闭进程这一术语做应有且恰当的扩充性理解。
[0093]请再次参阅图3,经过此处的处理之后,如前所述,本发明的应用程序进程可以激活一个用于展示当前处于节电模式的用户界面的活动组件,并且,除非用户明确退出,否则只允许用户呼叫指定的系统应用,例如电话、短信等,此外还禁止了其他应用程序在后台的自启动,由此,最终智能终端的电池剩余电量的实际使用时长,将高度接近或超过用户设定的具体时长参数,从而实现用户量化控制智能终端的能耗的目的。
[0094]依据计算机程序的模块化思维,本发明比照前述的控制方法还提供了一种智能终端,如图5所示,该智能终端包括交互单元、读取单元、计算单元以及控制单元,以下详细提示各单元所实现的功能:
[0095]所述的交互单元11,用于接收指定了延长智能终端使用的具体时长参数的用户指令。
[0096]在一个依赖于智能终端例如智能手机实现的应用场景中,用户可以运行以本发明的控制方法实现的应用程序,即进入相应的主控制界面。该应用程序向系统注册一个服务进程,在后台自动运行,以便实现本发明的控制方法。通常采用两种触发方式以实所述用户指令的接收。触发方式之一是在所述的主控制界面中设置入口选项或虚拟按键,当用户触控该入口选项或虚拟按键时,便调出告警界面,在告警界面展示本机电池的耗电情况,并提供默认的所述具体时长参数,或者提供一个输入区域供用户自定义该具体时长参数最终由用户确定输入。触发方式之二是由所述后台自动运行的服务进程监测系统的耗电量数据,当检测到该电池的剩余电量或剩余使用时间低于预定值时,便弹出所述的告警界面,这时,在该告警界面中除展示上述的信息外,还可以进一步展示电池剩余电量百分比、依据目前运行的活动应用对电池的使用情况预估的剩余使用时间等信息。
[0097]作为一种优选的默认情况,如图2所示,本发明的应用程序可以在该告警界面上提供一个或多个参考值如“I小时”、“3小时”、“12小时”作为所述的具体时长参数的推荐量,如用户认可系统的推荐结果,只需选中相应的虚拟按键,确认“使用电量加油包”即可。用户执行上述操作后,本发明的应用程序便接收了相应的用户指令,确定了用于延长本智能终端使用的具体时长参数的具体数值。当用户执行所述的用户指令并被本发明的应用程序的进程接收之后,便自动调出另一活动组件,以显示至指示处于省电模式的预定的用户界面。在该预定用户界面中,可以如图3所示,仅提供电话、信息、退出等选项,控制用户调用其他应用程序,以确保满足用户的电量使用控制需求。
[0098]需要指出的是,所述告警界面可以弹出菜单的方式实现,例如通过Android的屏幕绘制函数绘制在屏幕上,当然,也可以是通过一个活动组件(Activity)来实现。具体可由本领域技术人员运用习知手段灵活确定。
[0099]所述的读取单元12,用于向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据。
[0100]本发明的应用程序进程获取所述的用户指令后,作为安全防护的一环,需要向系统提交读取系统的活动进程耗电量数据的请求,以便通过系统鉴权后,获取相应的耗电量数据。对于Android系统而言,自Android 4.4版本以后,便具备自行统计各活动进程的电量使用情况的功能,这些数据并记载在相应的系统表格中,供经授权的访问使用。除此之外,对于一些改造自Android系统的派生操作系统而言,出于系统安全的目的,也可能加固了权限访问功能,因此,本发明考虑到这一因素,在此处执行向系统提交请求的步骤,以便顺利获取系统的耗电量数据。具体可参阅如下两种实现方案:
[0101]一种方案中,假定Android系统只能具有Root权限的操作开放所述的耗电量数据。这种情况下,此处向系统提交的请求,实质上是执行一个公知的SU提权操作,可能导致系统弹出提权询问窗口,或者依预审设置而直接通过这一提权操作,最终使得本发明的应用程序进程可以顺利读取系统记载的耗电量数据。
[0102]另一方案中,假定在Android系统的底层框架之上,架设有用于管理系统的资源接口访问权限的模块,这种情况下,当某应用程序进程欲调用耗电量数据时,通常由这种管理模块接收其请求,这一请求指令,实质上应是一种接口签名,是由本管理模块预先向该应用程序进程分配的,起到类似于令牌的作用。管理模块接收包含用于对应读取系统的活动进程耗电量数据的接口签名后,对该签名进行验证,验证通过后才向本发明的应用程序进程提供所述的由系统记载的耗电量数据。
[0103]当然,如果系统并未对读取耗电量数据做出限制,也将不必实施上述的鉴权过程,由本发明的应用程序进程提交请求便可直接读取系统的活动进程耗电量数据。
[0104]具体到Android系统的一个程序开发实例,所述的耗电量数据,主要指记载于智能终端存储设备上的电池消费日志。向系统请求读取耗电量数据,即指读取所述的电池消费日志。具体到程序开发时,读取手机上的电池消费日志,表现为向服务:com.android, server.am.BatteryStatsService:getService查询IBatteryStats接P,由此便可得到每一个uid消费的电池数据,满足上述的需求。
[0105]可见,视系统的安全需求而定,可以通过多种相应的方式来向系统读取由系统记载的活动进程耗电量数据,以便后续据此进行节电控制。
[0106]所述的计算单元13,用于基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据。
[0107]所述的活动进程耗电量数据,通常包括每个活动进程的特征信息及其活动时长,以及该时长范围内的总能耗。所述的特征信息,既可以是活动进程的进程ID(UID),也可以是其包名或其他唯一性特征,视系统的设计而定。所述的活动时长,是指活动进程进驻内存之后的活动时间长度,其与所述的总能耗之间具有对应关系,理论上,将总能耗除以相应的活动时长,便是相应的活动进程在单位时间长度内的单位时间能耗。
[0108]需要注意的是,在系统中,表达活动进程的总能耗的方式可以是电量单位mA,也可以是百分比单位,无论何种度量单位,均不影响本发明的实施。
[0109]诚然,系统记载的耗电量数据,一般还可以包括电池的当前剩余电量(或其百分比)、电池实际总容量、电池健康状态等信息。需要指出的是,由于电池会随着其充放电次数而降低其实际总容量,因此,计算剩余使用电量时,需要考虑到电池实际总容量的变化。通常,业内采用定时或不定时对电池的耗电量数据进行打点取样后,在考察电池在每个充放电周期被活动进程使用的情况的基础上,依据统计方式得出电池实际总容量,相应的,电池的剩余(使用)电量也会受该电池实际总容量的影响而得到更新。无论其过程如何灵活实现,其目的均是期望通过此处的处理,使系统所能提供的耗电量数据更为精准,在此基础上进行节电管理和控制,其效果更加明显。
[0110]所述的控制单元14,用于根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。
[0111]如前所述的每个活动进程的单位时间能耗数据,可以被用来实现节电管理和控制,具体实现策略可以灵活变化,以下提供一种较具操作性的构造供参考,该构造揭示该控制单元14如图6所示包括:
[0112]时长确定模块141,用于确定所述的用于延长智能终端的使用时长的所述具体时长参数:
[0113]如前所述,本发明的应用程序进程已经获取了由用户指令指定的用于控制智能终端的使用时长的具体时长参数,在本步骤中,确定此一参数,表现在程序底层是获得这一参数的传值或者读取这一属性的相应数值,以便后续参与运算。
[0114]余量确定模块142,用于确定智能终端电池的剩余使用电量:
[0115]同理,如前所述的电池的剩余电量,是以打点方式重新校正后计算而得的剩余电量,在此处可以通过向系统读取耗电量数据后,从中获得相应的剩余使用电量,以便参与后续的运算。
[0116]优选模块143,用于根据各活动进程的单位时间能耗,按照预定规则确定适于以所述具体时长参数的时间跨度消耗所述剩余使用电量的一组活动进程:
[0117]如前所述,当前系统中运行的各个活动进程的单位时间能耗可以根据前面揭示的方式计算得出,且前述的用户指定的具体时长参数也已经确定,因此,只要依照预定规则,便可确定一组需要保留的活动进程。
[0118]这里所称的预定规则,是指根据为活动进程预分配的权重进行按序选用将保留的活动进程,同等条件下,权重较高的活动进程优先予以保留。例如,对于系统启动和运行所需的必要进程,可以赋予最高权重;对于系统所需的通信进程,如电话、短信等进程,可以赋予次高权重(也可以是最高权重);对于保障系统安全的进程,可以赋予更净高权重;对于其余第三方应用,可以依其重要性分别赋予不同的更低的权重。由此,系统的活动进程的权重便已被预先分配,一般以表格的形式存在智能终端中。
[0119]基于确定的上述信息,便可根据用户指定的所述具体时长参数,按照权重次序,先选定较高权重的一组活动进程,使得电池剩余电量与依据这组活动进程的每个活动进程单位时间能耗之和的比值等于或接近于的所述的具体时长参数,即可确定这组活动进程为保留活动进程。
[0120]当然,也可采用另一种策略,即优先考虑单位时间能耗较高的活动进程来计算电池剩余电量的剩余使用时长是否等于或接近于所述具体时长参数,当满足这一条件时,再排除其中权重较低的活动进程,而从其余活动进程中将权重较高的活动进程计入该组待保留活动进程中,再重新计算确定。
[0121]可见,可以有多种策略来确定一组适宜保留以使电池剩余使用时长与用户指定的具体时长参数相匹配的活动进程,本领域技术人员可以据本发明揭示的精神实质做出灵活的变通,而不影响本发明的实施。
[0122]清除模块144,用于关闭该组活动进程之外的其余活动进程:
[0123]当上述待保留的活动进程组已经确定之后,其余活动进程便意味着应当被关闭,清除出内存。因此,本发明在此处将请求系统关闭那些未进入待保留活动进程组的其余活动进程,并且在后续系统运行过程中,确保这些被关闭的活动进程不再自启动,以确保节电控制的目的。
[0124]需要指出的是,关闭某些活动进程以达到节电控制的目的,应做广义的理解,不仅包括独享虚拟机的进程,也包括对一些接口类进程的有利于改变电量消耗的控制设置。表现到系统可视化界面上,不仅包括一些后台驻留的活动进程不再出现在后台程序列表中,也包括诸如WiF1、蓝牙连接可能被关闭,以及包括屏幕亮度被调低或调为非自动等。具体到程序开发层面,可以通过调用系统的设置接口,写入一些配置,比如在低电量时关闭键盘音,锁屏提示音,触摸振动,键盘音等等各类开关;或者调用power服务设置屏幕亮度等。当然,调用系统服务接口通常需要较高权限,故而使用这些接口时,也可以采取前述的鉴权过程来辅助实现,以便实现更安全的节电控制效果。本领域技术人员应当知晓这些原理,从而对此处关闭进程这一术语做应有且恰当的扩充性理解。
[0125]请再次参阅图3,经过此处的处理之后,如前所述,本发明的应用程序进程可以激活一个用于展示当前处于节电模式的用户界面的活动组件,并且,除非用户明确退出,否则只允许用户呼叫指定的系统应用,例如电话、短信等,此外还禁止了其他应用程序在后台的自启动,由此,最终智能终端的电池剩余电量的实际使用时长,将高度接近或超过用户设定的具体时长参数,从而实现用户量化控制智能终端的能耗的目的。
[0126]在本发明的一个应用场景中,用户的智能手机的剩余电量低于20%时,本发明的应用程序进程即发出告警音,并且在系统桌面上弹出如图2所示类型的告警界面,必要时自行驱动亮屏。用户取出手机之后,根据自身户外活动情况,假定尚需在外活动3小时,则选择“3小时”一项,然后触控“使用电量加油包”功能,完成要确保手机可以继续使用的具体时长参数设定。由此,本发明的应用程序进程便激活如图3所示类型的界面,用于警示用户目前正处于节电状态,而在后台,该进程则自行根据预定节电策略控制关闭了系统的WiF1、蓝牙等耗电连接、调低了屏幕亮度值、杀灭了内存中权重较低的活动进程等,完成一系列配合节电的控制操作,使得耗电进程大大减少,以便确保电池的剩余使用时间能够与用户设定的期望值相匹配。
[0127]经过实验检测,实施了本发明的控制方法的智能终端,其能耗量化控制效果较为有效,90%以上的应用场景中,均能确保智能终端电池的实际使用时长与用户设定的具体时长参数相匹配,从而实现用户自定义量化控制的目的。
[0128]综上所述,本发明的实现了对智能终端的电池的能耗的量化控制,丰富了节电控制手段,提高了量化控制电池能耗的调节准确度和预测精确度。
[0129]本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、R0M(Read-0nly Memory,只读存储器)、RAM (Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPR0M(E1 ectricalIy ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
[0130]本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
[0131]本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
[0132]以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【主权项】
1.一种智能终端能耗量化控制方法,其特征在于,包括如下步骤: 接收指定了延长智能终端使用的具体时长参数的用户指令; 向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据; 基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据; 根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。2.根据权利要求1所述的方法,其特征在于,所述接收指定了延长智能终端使用的具体时长的用户指令的步骤中,基于智能终端检测电池剩余电量低于预定值时,弹出告警界面以实现所述用户指令的接收。3.根据权利要求1所述的方法,其特征在于,所述向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据的步骤中,向系统提交的请求中包含用于对应读取系统的活动进程耗电量数据的系统权限请求指令或接口签名。4.根据权利要求1所述的方法,其特征在于,所述系统的活动进程耗电量数据包括每个活动进程的特征信息及其活动时长以及该时长范围内的总能耗。5.根据权利要求4所述的方法,其特征在于,所述基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据的步骤中,先获取每个活动进程的所述特征信息、活动时长及总能耗,对应于每个活动进程,以其总能耗除以活动时长确定关联于所述特征信息的属于该活动进程的单位时间能耗。6.根据权利要求5所述的方法,其特征在于,所述特征信息为相应的活动进程的进程ID07.根据权利要求1所述的方法,其特征在于,所述根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配的步骤,包括如下具体步骤: 确定所述的用于延长智能终端的使用时长的所述具体时长参数; 确定智能终端电池的剩余使用电量; 根据各活动进程的单位时间能耗,按照预定规则确定适于以所述具体时长参数的时间跨度消耗所述剩余使用电量的一组活动进程; 关闭该组活动进程之外的其余活动进程。8.根据权利要求7所述的方法,其特征在于,所述剩余使用电量通过定时或不定时对智能终端电池的耗电量数据进行打点取样后统计更新而得。9.根据权利要求1所述的方法,其特征在于,所述接收指定了延长智能终端使用的具体时长参数的用户指令的步骤中,响应于所述用户指令,切换至预定用户界面以警示进入节电模式。10.一种智能终端,其特征在于,包括: 交互单元,用于接收指定了延长智能终端使用的具体时长参数的用户指令; 读取单元,用于向系统提交请求,通过鉴权后,读取系统的活动进程耗电量数据; 计算单元,用于基于所述活动进程耗电量数据,计算每个活动进程的单位时间能耗数据; 控制单元,用于根据所述单位时间能耗数据关闭若干活动进程以使电池剩余使用时长与所述指定的具体时长参数相匹配。
【文档编号】G06F1/32GK105828424SQ201610140849
【公开日】2016年8月3日
【申请日】2016年3月11日
【发明人】郭新贺, 赵明明, 施生移
【申请人】北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1