一种应用程序耗电量检测方法及系统的制作方法

文档序号:6505479阅读:239来源:国知局
一种应用程序耗电量检测方法及系统的制作方法
【专利摘要】本发明公开了一种应用程序耗电量检测方法及系统,该方法及系统首先获取并记录移动设备每消耗等额预设电量所用的时间区间,监控前台应用的启动时刻t1和关闭时刻t4,再根据所述等额预设电量、所述启动时刻t1与关闭时刻t4位于的所述时间区间构成的坐标轴的位置,确定所述前台应用的耗电量Q。通过该方法及系统使用户能够实时了解各个应用程序在前台运行的耗电情况,可根据需要选择使用耗电量较少的应用,延长电池电量的使用时间。此外,通过检测消耗等额电量所用的时间以及前台应用启动和关闭时间计算耗电量,将消耗的电量按照时间分配,避免对每一个应用单位时间内耗电情况的平均化,提高了耗电量检测的精度。
【专利说明】一种应用程序耗电量检测方法及系统

【技术领域】
[0001] 本发明涉及耗电量检测【技术领域】,具体涉及一种应用程序耗电量检测方法及系 统。

【背景技术】
[0002] 由于移动设备的便捷性,越来越多的用户喜欢使用移动设备代替PC进行操作(如 上网浏览网页或者玩游戏),随之而来的是越来越多的应用被安装在移动设备上,相应地, 应用越多耗电量越多也是用户最头疼的问题。目前市面上所使用的移动电子设备均具有电 池剩余电量显示功能,但是用户并不知道在移动设备上每个应用的耗电情况,用户不能自 主选择耗电较少的应用。
[0003] 现有检测应用耗电技术只能通过硬件完成,即在移动设备上运行某款应用,并在 设备上加载耗电检测设备。该设备可以实时显示移动设备电量消耗情况。该种方式可以准 确检测出某款应用在某种操作下消耗电量的多少。不过该方案需要昂贵的耗电检测设备, 且需要测试人员有一定的物理学知识,无法对普通用户进行普及。目前有的操作系统也具 有查看耗电排行的功能,可以查看各个应用相对耗电的百分比,不过没有具体耗电量的数 值,其计算方式也不符合用户预期,导致这个功能无法被用户信任。


【发明内容】

[0004] 针对现有技术中存在的缺陷,本发明的目的在于提供一种应用程序耗电量检测的 方法及系统,通过该方法可确定各个应用程序的耗电量。
[0005] 为实现上述目的,本发明采用的技术方案如下:
[0006] 一种应用程序耗电量检测方法,包括以下步骤:
[0007] 获取并记录移动设备每消耗等额预设电量所用的时间区间;
[0008] 监控前台应用的启动时刻h和关闭时刻t4 ;
[0009] 根据所述等额预设电量、所述启动时刻&与关闭时刻t4位于的所述时间区间构成 的坐标轴的位置,确定所述前台应用的耗电量Q。
[0010] 进一步,如上所述的应用程序耗电量检测方法,所述根据所述等额预设电量、所述 启动时刻^与关闭时刻t4位于的所述时间区间构成的坐标轴的位置,确定所述前台应用的 耗电量Q,包括:
[0011] 获取所述启动时刻h与关闭时刻t4所跨越的完整的时间区间的个数η ;
[0012] 根据所述的等额预设定量和所跨越的完整的时间区间的个数η的值,计算所述前 台应用的耗电量Q。
[0013] 进一步,如上所述的应用程序耗电量检测方法,所述计算所述前台应用的耗电量Q 的公式为:
[0014] 前台应用的耗电量Q= (n+1) Xq,
[0015] 其中,q为所述等额预设电量。
[0016] 进一步,如上所述的应用程序耗电量检测方法,所述根据所述等额预设电量、所述 启动时刻^与关闭时刻t 4位于的所述时间区间构成的坐标轴的位置,确定所述前台应用的 耗电量Q,包括:
[0017] 当启动时刻h和关闭时刻14处于同一个时间区间时,前台应用的耗电量 (t3-t2)] Xq,
[0018] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,〖3表示前台应用启 动时刻所在的时间区间的终止时刻,q为所述等额预设电量。
[0019] 进一步,如上所述的应用程序耗电量检测方法,所述根据所述等额预设电量、所述 启动时刻^与关闭时刻t 4位于的所述时间区间构成的坐标轴的位置,确定所述前台应用的 耗电量Q,包括:
[0020] 当启动时刻h和关闭时刻14处于不同的时间区间时,前台应用的耗电量 Q= [ (t3-t!) / (t3-t2) +n+ (t4-t5) / (t6-t5) ] X q ;
[0021] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,〖3表示前台应用启 动时刻所在的时间区间的终止时刻,t 5表示前台应用关闭时刻所在的时间区间的起始时 亥|J,t6表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的 坐标轴上所跨越的完整的时间区间的个数,q为所述等额预设电量。
[0022] 进一步,如上所述的应用程序耗电量检测方法,其特征在于,所述的等额预设电量 为占用移动设备电池总容量的百分比a%,其中,0〈a彡50。
[0023] 进一步,如上所述的应用程序耗电量检测方法,所述的等额预设电量为消耗的等 额电量值9 1,其中,(Kqi彡电池总容量。
[0024] 进一步,如上所述的应用程序耗电量检测方法,当移动设备的后台应用的个数大 于设定阈值时,所述方法还包括:
[0025] a.关闭所有后台应用,记录如台应用在设定时间内的耗电量Q|j ;
[0026] b.保持与所述关闭所有后台应用时相同的移动设备运行状态,打开设定数量范围 的后台应用,记录如台应用和后台应用在设定时间的总耗电量Q,g,;
[0027] c.计算设定数量范围的后台应用的耗电量占总耗电量的百分比,计算公式为(Q 总-Q前)/Q总;
[0028] d.判断计算后台应用的耗电量占总耗电量的百分比的次数是否达到设定值,若是 则进入下一步,若否则返回步骤a,重复步骤a?c ;
[0029] e.将多次计算的后台应用的耗电量占总耗电量的百分比的平均值,作为后台应用 占总耗电量百分比的最终值P;
[0030] f.根据前台应用的耗电量Q与所述的最终值p计算前台应用的精确耗电量Qs, 计算公式为:Qn=Q (1-p)。
[0031] 一种应用程序耗电量检测系统,包括:
[0032] 时间区间记录模块,用于获取并记录移动设备每消耗等额预设电量所用的时间区 间;
[0033] 前台应用监控模块,用于监控前台应用的启动时刻h和关闭时刻t4 ;
[0034] 耗电量确定模块,用于根据所述等额预设电量、所述启动时刻h与关闭时刻14位 于的所述时间区间构成的坐标轴的位置,确定所述前台应用的耗电量Q。
[0035] 进一步,如上所述的应用程序耗电量检测系统,所述的耗电量确定模块包括:
[0036] 跨越区间个数获取单元,用于获取所述前台应用的启动时刻&与关闭时刻t4所跨 越的完整的时间区间的个数η ;
[0037] 耗电量计算单元,用于根据所述的等额预设定量和所跨越的完整的时间区间的个 数η的值,计算所述前台应用的耗电量Q。
[0038] 进一步,如上所述的应用程序耗电量检测系统,耗电量计算单元计算前台应用的 耗电量Q的公式为:
[0039] 前台应用的耗电量Q= (n+1) Xq,
[0040] 其中,q为等额预设电量。
[0041] 进一步,如上所述的应用程序耗电量检测系统,当所述的前台应用的启动时刻 和关闭时刻t 4处于同一个时间区间时,所述耗电量确定模块计算前台应用的耗电量Q的公 式为:
[0042] 前台应用的耗电量 Xq,
[0043] 其中,t2表示前台应用启动时刻所在的时间区间的起始时亥lj,t3表示前台应用启 动时刻所在的时间区间的终止时刻,q为等额预设电量。
[0044] 进一步,如上所述的应用程序耗电量检测系统,当启动时刻h和关闭时刻t4处于 不同的时间区间时,所述耗电量确定模块计算前台应用的耗电量Q的公式为:
[0045] 前台应用的耗电量 Q=[ (1:3-1^)/(1:3-1:2)+11+(t4-t5)/(t6_t 5)] Xq ;
[0046] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,〖3表示前台应用启 动时刻所在的时间区间的终止时刻,t 5表示前台应用关闭时刻所在的时间区间的起始时 亥lj,t6表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的 坐标轴上所跨越的完整的时间区间的个数,q为等额预设电量。
[0047] 进一步,如上所述的应用程序耗电量检测系统,当移动设备的后台应用的个数大 于设定阈值时,该系统还包括:
[0048] 精确耗电量确定模块,用于根据所述的前台应用的耗电量确定前台应用的精确耗 电量。
[0049] 进一步,如上所述的应用程序耗电量检测系统,所述的精确耗电量确定模块包 括:
[0050] 前台应用耗电测试单元,用于在关闭所有后台应用时,记录前台应用在设定时间 内的耗电量Qu ;
[0051] 总耗电量测试单元,用于在保持与所述关闭所有后台应用时相同的移动设备运行 状态时,打开设定数量范围的后台应用,记录前台应用和后台应用在设定时间的总耗电量Q 总;
[0052] 后台耗电百分比计算单元,用于计算设定数量范围的后台应用的耗电量占总耗电 量的百分比,计算公式为(Q总-Q前)/Q总;
[0053] 计算次数判断单元,用于查看计算后台应用的耗电量占总耗电量的百分比的次数 是否达到设定值,若是则进入最终值计算单元,若否则返回前台应用耗电测试单元;
[0054] 最终值计算单元,用于计算后台应用占总耗电量百分比的最终值p,计算方式为: 将多次计算的后台应用的耗电量占总耗电量的百分比的平均值作为后台应用占总耗电量 百分比的最终值P;
[0055] 精确耗电量计算单元,用于根据前台应用的耗电量Q与所述的最终值p计算前台 应用的精确耗电量Qi?,计算公式为:Qi?=Q (1-P)
[0056] 本发明的有益效果在于:本发明所述的方法及系统,通过检测电池电量消耗的情 况,能够确定各个应用程序的耗电量,使用户能够实时了解各个应用程序在前台运行的耗 电情况,可自主的根据需要选择使用耗电量较少的应用,延长电池电量的使用时间。

【专利附图】

【附图说明】
[0057] 图1为本发明【具体实施方式】中一种应用程序耗电量检测系统的结构框图;
[0058] 图2为本发明【具体实施方式】中考虑后台应用耗电量时的一种应用程序耗电量检 测系统的结构框图;
[0059] 图3本发明【具体实施方式】中一种应用程序耗电量检测方法的流程图;
[0060] 图4为本发明【具体实施方式】中计算前台应用精确耗电量的流程图;
[0061] 图5【具体实施方式】中剩余电量百分比与时刻的对应关系示意图;
[0062] 图6为【具体实施方式】中前台应用的运行时间示意图。

【具体实施方式】
[0063] 下面结合说明书附图与【具体实施方式】对本发明做进一步的详细说明。
[0064] 本发明所述的一种应用程序耗电量检测方法及系统的主要思想是:通过记录移动 设备每消耗等额预设电量所用的时间区间,构建消耗等额电量的时间区间的坐标轴,并根 据前台应用的启动时刻和关闭时刻所在的时间区间坐标轴的位置,确定出前台应用的耗电 量。通过本发明提供的检测应用程序耗电量的方法及系统,用户可以实时了解各个应用程 序在前台运行的耗电量,可以自主地选择使用耗电较少的应用。
[0065] 图1示出了本【具体实施方式】中一种应用程序耗电量检测系统的结构框图,由图中 可以看出,该系统主要包括时间区间记录模块11、前台应用监控模块12和耗电量确定模块 13。
[0066] 时间区间记录模块11用于获取并记录移动设备每消耗等额预设电量所用的时间 区间;
[0067] 前台应用监控模块12用于监控前台应用的启动时刻h和关闭时刻t4 ;
[0068] 耗电量确定模块13用于根据所述等额预设电量、所述启动时刻h与关闭时刻t4 位于的所述时间区间构成的坐标轴的位置,确定所述前台应用的耗电量Q。
[0069] 其中,耗电量确定模块13包括跨越区间个数获取单元和耗电量计算单元,跨越区 间个数获取单元用于获取所述前台应用的启动时刻A与关闭时刻t4所跨越的完整的时间 区间的个数η;
[0070] 耗电量计算单元用于根据所述的等额预设定量和所跨越的完整的时间区间的个 数η的值,计算所述前台应用的耗电量Q,计算公式为:
[0071] 前台应用的耗电量Q= (n+1) Xq,
[0072] 其中,q为等额预设电量。
[0073] 当所述的前台应用的启动时刻^和关闭时刻〖4处于同一个时间区间时,即前台应 用的启动时刻ti与关闭时刻t4所跨越的完整的时间区间的个数为零时,耗电量确定模块计 算前台应用的耗电量Q的公式为:
[0074] 前台应用的耗电量Q= (Vh) At3_t2) ] X q,
[0075] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,〖3表示前台应用启 动时刻所在的时间区间的终止时刻,q为等额预设电量。
[0076] 当启动时刻h和关闭时刻14处于不同的时间区间时,耗电量确定模块计算前台应 用的耗电量Q的公式为:
[0077] 前台应用的耗电量 Q=[ (1:3-1^)/(1:3-1:2)+11+(t4-t5)/(t6_t 5)] Xq ;
[0078] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,〖3表示前台应用启 动时刻所在的时间区间的终止时刻,t 5表示前台应用关闭时刻所在的时间区间的起始时 亥lj,t6表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的 坐标轴上所跨越的完整的时间区间的个数,q为等额预设电量。
[0079] 所述的前台应用,即当前运行的、用户可以看到和操作的程序,后台应用是用户看 不到、但却在运行的程序。后台应用的耗电量与前台应用相比虽然很小,但是当后台运行的 应用较多的情况下,后台应用消耗的电量占总耗电量的比重还是比较大的,因此为了提高 检测每一个前台应用的耗电量的精度,可以设置一个阈值(如3-5个),当后台运行的应用 的个数大于阈值的时候考虑后台运行的应用的耗电量,当后台运行的应用的个数小于阈值 的时候可以不考虑后台应用的耗电量。
[0080] 图2示出了当考虑后台应用的耗电量时,本实施方式中一种应用程序耗电量检测 系统的结构框图,由图中可以看出,该系统除了包括时间区间记录模块11、前台应用监控模 块12和耗电量确定模块13,还包括用于根据所述前台应用的耗电量确定前台应用的精确 耗电量的精确耗电量确定模块14,该模块包括前台应用耗电测试单元141、总耗电量测试 单元142、后台耗电百分比计算单元143、计算次数判断单元144、最终值计算单元145和精 确耗电量计算单元146,其中,
[0081] 前台应用耗电测试单元141用于在关闭所有后台应用时,记录前台应用在设定时 间内的耗电量Qu ;
[0082] 总耗电量测试单元142用于在保持与所述关闭所有后台应用时相同的移动设备 运行状态时,打开设定数量范围的后台应用,记录前台应用和后台应用在设定时间的总耗 电量Q总;
[0083] 后台耗电百分比计算单元143用于计算设定数量范围的后台应用的耗电量占总 耗电量的百分比,计算公式为(Q总-Q前)/Q总;
[0084] 计算次数判断单元144用于查看计算后台应用的耗电量占总耗电量的百分比的 次数是否达到设定值,若是则进入最终值计算单元,若否则返回前台应用耗电测试单元;
[0085] 最终值计算单元145用于计算后台应用占总耗电量百分比的最终值p,计算方式 为:将多次计算的后台应用的耗电量占总耗电量的百分比的平均值作为后台应用占总耗电 量百分比的最终值P;
[0086] 精确耗电量计算单元146用于根据前台应用的耗电量Q与所述的最终值p计算前 台应用的精确耗电量Qi?,计算公式为:Qi?=Q (1-P)。
[0087] 为了实现本发明的目的,本实施方式中还提供了一种基于图1中所示系统的一种 应用程序耗电量的检测方法,图3示出了本【具体实施方式】中一种应用程序耗电量检测方法 的流程图,该方法主要包括以下步骤:
[0088] 步骤S21 :记录移动设备每消耗等额预设电量的时间区间;
[0089] 监控移动设备电池电量的变化情况,获取并记录移动设备每消耗等额预设定量的 时刻,将电池容量值划分为多个时间区间,划分后每一个时间区间所对应的移动设备的耗 电量是相同的,耗电量为等额预设电量。
[0090] 每一个时间区间都有一个起始时刻和终止时刻,即前一个时间区间结束的时刻 (当前时间区间的开始时刻)和当前时间区间结束的时刻。
[0091] 考虑电池的放电特性,电池放电并不是均匀放电,也就是说应用程序在运行的过 程中耗电的速度并不是相等的,因此消耗等额电量所用的时间很可能不同。监测电池电量 的变化情况,等额预设电量可以以占用移动设备电池总容量的百分比表示,例如a%,其中, 0〈a < 50,如果a的取值为1,每消耗电池总容量1%的电量记录一个时间区间;等额预设定 量也可以用消耗的等额电量值表示,例如等额电量值为qpiKqi <电池总容量,如果qi取值 为20mAh时,每消耗20mAh的电量记录一个时间区间。
[0092] 例如,一个安卓系统的手机的电池容量为2000mAh,从充满电开始计时,40分钟后 消耗了电池容量的1%,也就是消耗了 20mAh的电量,剩余电量为电池容量的99%,再过30分 钟又消耗了 1%,再过20分钟又消耗了 1%,再过了 30分钟又消耗了 1%......,如图5中所 示,第一个时间区间为0-40分钟的时间段(电量由100%消耗到99%所在的区间),第二个等 额区间为40-70分钟的时间段(电量由99%消耗到98%所在的区间)。本实施例中用百分比 (a%)的形式表示消耗的等额预设电量。
[0093] 将电池容量值划分为每消耗预设定额电量的多个时间区间后,多个时间区间构成 一个时间区间的坐标轴,如图5所示。
[0094] 步骤S22 :监控移动设备前台应用的启动时刻和关闭时刻;
[0095] 监控每一个前台应用的启动时刻h和关闭时刻t4,监控具体方法为:每隔一段时 间(如1-30S)进行一次监测,可以通过系统API (应用程序接口)获取当前Activity堆栈, 并获取堆栈栈顶的应用,位于堆栈栈顶的应用即为前台应用。获取以后与之前获取的前台 应用对比,如果当前监测时刻获取的应用与前一个监测时刻获取的应用不同,则当前监测 时刻即为前一个前台应用的结束时间,同时为后面应用的开始时间。如图6中所示,应用A 从Os时开始运行,到第三秒的时候前台应用变为B,则认为A运行了 3S,第四秒的时候,前 台应用变为C,则B运行了 1S。如图5中所示的,前台应用D从第20min的时候开始在前台 运行,到第llOmin结束前台运行,也就是说前台应用D的起始时刻A为20min这一时刻, 结束时刻为llOmin这一时刻,该前台应用共在前台运行了 90min。
[0096] 步骤S23 :计算前台应用的耗电量Q。
[0097] 根据步骤S21中所述的等额预设电量、以及前台应用的启动时刻h与关闭时刻t4 所在的时间区间构成的坐标轴的位置,确定所述前台应用的耗电量。
[0098] 其中,根据等额预设电量、启动时刻h与关闭时刻t4位于的所述时间区间构成的 坐标轴的位置,确定所述前台应用的耗电量Q,包括:
[0099] i.获取前台应用的启动时刻h与关闭时刻t4所跨越的完整的时间区间的个数 η ;
[0100] ii.根据所述的等额预设定量和所跨越的完整的时间区间的个数η的值,计算前 台应用的耗电量Q,计算所述前台应用的耗电量Q的公式为:
[0101] 前台应用的耗电量Q= (n+1) Xq,其中,q为等额预设电量。
[0102] 当前台应用的启动时刻h和关闭时刻t4处于同一个时间区间,即前台应用的启动 时刻h与关闭时刻t 4所跨越的完整的时间区间的个数为零时,耗电量确定模块计算前台应 用的耗电量Q的公式为:
[0103] 前台应用的耗电量 0=(1:4-1^)/(1:3-1:2)] Xq,
[0104] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,&表示前台应用启 动时刻所在的时间区间的终止时刻,q为等额预设电量。
[0105] 当启动时刻h和关闭时刻14处于不同的时间区间时,耗电量确定模块计算前台应 用的耗电量Q的公式为:
[0106] 前台应用的耗电量 Q=[ (1:3-1^)/(1:3-1:2)+11+(t4-t5)/(t6_t 5)] Xq ;
[0107] 其中,t2表示前台应用启动时刻所在的时间区间的起始时刻,&表示前台应用启 动时刻所在的时间区间的终止时刻,t 5表示前台应用关闭时刻所在的时间区间的起始时 亥|J,t6表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的 坐标轴上所跨越的完整的时间区间的个数,q为等额预设电量。
[0108] 对于图5中的前台应用D,前台应用D在前台运行的90min时间段内,跨越了两个 (第二个和第三个)完整的时间区间,该应用D在第20分钟的时候启动(ti=20),第110分 钟的时候结束前台运行(t 4=110),假设电池的总容量为2000mAh,等额预设电量为电池总容 量的1%,那么该应用D在前台运行过程中消耗的电量为:
[0109] 前台应用 D 的耗电量 QD= [ (tfti) / (t3_t2) +n+ (t4_t5) / (t6_t5) ] X q= [ (40-20) / (40-0)+2+(110-90)/(120-90)] X1%X 2000=63. 4mAh。
[0110] 由于前台应用启动时,其启动时刻移动设备的电量可能是充满电,也可能不是充 满电,如果是充满电的状态即电量是100%,可以根据步骤S21中所划分的时间区间很容易 的确定前台应用启动所在的等额区间;如果前台应用启动时,设备的电量是不满的状态,还 需要监控并记录该前台应用启动时的移动设备的电量,根据该电量来确定前台应用启动时 刻所在的时间区间。本实施方式中根据移动设备启动时刻的电量来确定启动时刻所在的等 额区间的方式是:启动时刻电量再消耗时进入的第一个时间区间记为前台应用启动时刻所 在的等额区间。
[0111] 例如,在本实施方式中某一前台应用启动时,监测到设备的电量为98%,在确定前 台应用启动时刻所在的等额区间时,由于前台应用启动时9 8 %的电量不确定是刚由9 9 % 落到到98%,还是即将由98%落到97%,采用上述方确定式时,根据步骤S21所划分的时间 区间,对于启动时刻电量98%的情况,98%的电量再消耗时,其进入的第一个时间区间是 97%-96%所在的时间区间,那么,该前台应用的启动时刻所在的时间区间为图5所示的第3 个等额区间。在确定了启动时刻所在的时间区间后,即可根据所划分的时间区间和上述方 式确认耗电量。
[0112] 当然,在计算得出一个前台应用的耗电量后,也可以估算出前台应用在单位时间 内消耗的电量,一段时间内消耗的总电量除以运行的时间即为单位时间内消耗的电量,即 前台应用单位时间耗电量Q'=Q/
[0113] 由于后台应用的耗电量与前台应用的耗电量相比很少,因此在后台运行的应用不 多的情况下可以不考虑后台应用的耗电量。上述步骤S21?步骤S23即为不考虑后台应用 耗电量的情况下,检测各个前台应用耗电量的方法。但是当后台运行的应用较多的情况下, 消耗的电量占总耗电量的比重还是比较大的,因此为了提高检测每一个前台应用的耗电量 的精度,可以设置一个设定阈值(如3-5个),当后台运行的应用的个数大于设定阈值的时 候考虑后台运行的应用的耗电量,当后台运行的应用的个数小于或等于阈值的时候可以不 考虑后台应用的耗电量。
[0114] 当考虑后台应用的耗电量时,本实施方式中所述的一种应用程序耗电量检测方法 还包括根据所述的前台应用的耗电量计算前台应用的精确耗电量的步骤,该精确耗电量是 指当移动设备的后台应用的个数大于设定阈值时的前台应用的耗电量。
[0115] 监控后台运行时间(后台应用的启动时刻和关闭)的方法可以与监控前台运行时 间的方法相同,即每隔一段时间会通过系统API获取当前Activity堆栈,除位于堆栈栈顶 的以外的应用即为后台应用。由于当应用在后台运行的时候,其耗电量非常低,所以无法直 接测试。本实施方式中给出了一种可以通过实验的方式测定后台应用程序耗电量占总耗电 量百分比的方式,其流程图如图4所示:
[0116] a.首先,关闭移动设备的所有后台应用,记录如台应用在设定时间内的耗电量Q 前;
[0117] b.保持与所述关闭所有后台应用时相同的移动设备运行状态,打开设定数量范围 的后台应用,记录如台应用和后台应用在设定时间的总耗电量Q,g,。其中,相冋的移动设备 运行状态是指与步骤a中设备的运行状态相同,包括电池的电量情况相同、运行的前台应 用相同等。设定数量范围内的后台应用是指对后台应用的个数划分一定的区间,如表1中 所示的,1-5个后台应用为一个区间范围,6-10个为一个区间范围。
[0118] c.计算设定数量范围的后台应用的耗电量占总耗电量的百分比,计算公式为(Q 总-Q前)/Q总;
[0119] d.判断计算后台应用的耗电量占总耗电量的百分比的次数是否达到设定值,若是 则进入下一步,若否则返回步骤a,重复步骤a?c ;
[0120] e.将多次计算的后台应用的耗电量占总耗电量的百分比的平均值,作为后台应用 占总耗电量百分比的最终值P;
[0121] f.根据前台应用的耗电量Q与所述的最终值P计算前台应用的精确耗电量Qs, 计算公式为:Qn=Q (1-p)。
[0122]

【权利要求】
1. 一种应用程序耗电量检测方法,其特征在于,该方法包括以下步骤: 获取并记录移动设备每消耗等额预设电量所用的时间区间; 监控前台应用的启动时刻和关闭时刻t4; 根据所述等额预设电量、所述启动时刻^与关闭时刻〖4位于的所述时间区间构成的坐 标轴的位置,确定所述前台应用的耗电量Q。
2. 如权利要求1所述的应用程序耗电量检测方法,其特征在于:所述根据所述等额预 设电量、所述启动时刻&与关闭时刻t 4位于的所述时间区间构成的坐标轴的位置,确定所 述前台应用的耗电量Q,包括: 获取所述启动时刻h与关闭时刻t4所跨越的完整的时间区间的个数η ; 根据所述的等额预设定量和所跨越的完整的时间区间的个数η的值,计算所述前台应 用的耗电量Q。
3. 如权利要求2所述的应用程序耗电量检测方法,其特征在于:所述计算所述前台应 用的耗电量Q的公式为: 前台应用的耗电量Q= (n+1) Xq, 其中,q为所述等额预设电量。
4. 如权利要求1所述的应用程序耗电量检测方法,其特征在于:所述根据所述等额预 设电量、所述启动时刻&与关闭时刻t 4位于的所述时间区间构成的坐标轴的位置,确定所 述前台应用的耗电量Q,包括: 当启动时刻A和关闭时刻t4处于同一个时间区间时,前台应用的耗电量Q= (t4-ti) / (t3_t2)] Xq, 其中,1:2表示前台应用启动时刻所在的时间区间的起始时刻,t3表示前台应用启动时 刻所在的时间区间的终止时刻,q为所述等额预设电量。
5. 如权利要求1所述的应用程序耗电量检测方法,其特征在于:所述根据所述等额预 设电量、所述启动时刻&与关闭时刻t 4位于的所述时间区间构成的坐标轴的位置,确定所 述前台应用的耗电量Q,包括: 当启动时刻a和关闭时刻t4处于不同的时间区间时,前台应用的耗电量〇=[α3-^/ (t3-t2) +n+ (t4-t5) / (t6-t5) ] X q ; 其中,1:2表示前台应用启动时刻所在的时间区间的起始时刻,t3表示前台应用启动时 刻所在的时间区间的终止时刻,t5表示前台应用关闭时刻所在的时间区间的起始时刻,t6 表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的坐标 轴上所跨越的完整的时间区间的个数,q为所述等额预设电量。
6. 如权利要求1-5任意一项所述的应用程序耗电量检测方法,其特征在于,所述的等 额预设电量为占用移动设备电池总容量的百分比a%,其中,0〈a彡50。
7. 如权利要求1-5任意一项所述的应用程序耗电量检测方法,其特征在于,所述的等 额预设电量为消耗的等额电量值%,其中,电池总容量。
8. 如权利要求1-5任意一项所述的应用程序耗电量检测方法,其特征在于,当移动设 备的后台应用的个数大于设定阈值时,所述方法还包括: a. 关闭所有后台应用,记录如台应用在设定时间内的耗电量Q|j ; b. 保持与所述关闭所有后台应用时相同的移动设备运行状态,打开设定数量范围的后 台应用,记录如台应用和后台应用在设定时间的总耗电量Q,g,; C.计算设定数量范围的后台应用的耗电量占总耗电量的百分比,计算公式为(Q,&_QW) /Q总; d. 判断计算后台应用的耗电量占总耗电量的百分比的次数是否达到设定值,若是则进 入下一步,若否则返回步骤a,重复步骤a?c ; e. 将多次计算的后台应用的耗电量占总耗电量的百分比的平均值,作为后台应用占总 耗电量百分比的最终值P; f. 根据前台应用的耗电量Q与所述的最终值P计算前台应用的精确耗电量Ql?,计算 公式为:Qfi=Q (l_p)。
9. 一种应用程序耗电量检测系统,包括: 时间区间记录模块,用于获取并记录移动设备每消耗等额预设电量所用的时间区间; 前台应用监控模块,用于监控前台应用的启动时刻h和关闭时刻t4 ; 耗电量确定模块,用于根据所述等额预设电量、所述启动时刻h与关闭时刻t4位于的 所述时间区间构成的坐标轴的位置,确定所述前台应用的耗电量Q。
10. 如权利要求9所述的应用程序耗电量检测系统,其特征在于:所述的耗电量确定模 块包括: 跨越区间个数获取单元,用于获取所述前台应用的启动时刻&与关闭时刻14所跨越的 完整的时间区间的个数η; 耗电量计算单元,用于根据所述的等额预设定量和所跨越的完整的时间区间的个数η 的值,计算所述前台应用的耗电量Q。
11. 如权利要求10所述的应用程序耗电量检测系统,其特征在于:耗电量计算单元计 算前台应用的耗电量Q的公式为: 前台应用的耗电量Q= (n+1) Xq, 其中,q为所述等额预设电量。
12. 如权利要求9所述的应用程序耗电量检测系统,其特征在于:当所述的前台应用的 启动时刻&和关闭时刻14处于同一个时间区间时,所述耗电量确定模块计算前台应用的耗 电量Q的公式为: 前台应用的耗电量Xq, 其中,1:2表示前台应用启动时刻所在的时间区间的起始时刻,t3表示前台应用启动时 刻所在的时间区间的终止时刻,q为所述等额预设电量。
13. 如权利要求9所述的应用程序耗电量检测系统,其特征在于:当启动时刻h和关闭 时刻t4处于不同的时间区间时,所述耗电量确定模块计算前台应用耗电量Q的公式为: 前台应用的耗电量 Q=[ (1:3-1^)/(1:3-1:2)+11+(t4-t5)/(t6_t 5)] Xq ; 其中,1:2表示前台应用启动时刻所在的时间区间的起始时刻,t3表示前台应用启动时 刻所在的时间区间的终止时刻,t5表示前台应用关闭时刻所在的时间区间的起始时刻,t6 表示前台应用关闭时刻所在的时间区间的终止时刻,η为前台应用在时间区间构成的坐标 轴上所跨越的完整的时间区间的个数,q为所述等额预设电量。
14. 如权利要求9至13任意一项所述的应用程序耗电量检测系统,其特征在于:当移 动设备的后台应用的个数大于设定阈值时,该系统还包括: 精确耗电量确定模块,用于根据所述的前台应用的耗电量确定前台应用的精确耗电 量。
15.如权利要求14所述的应用程序耗电量检测系统,其特征在于,所述的精确耗电量 确定模块包括: 前台应用耗电测试单元,用于在关闭所有后台应用时,记录前台应用在设定时间内的 耗电量Qu ; 总耗电量测试单元,用于在保持与所述关闭所有后台应用时相同的移动设备运行状态 时,打开设定数量范围的后台应用,记录前台应用和后台应用在设定时间的总耗电量; 后台耗电百分比计算单元,用于计算设定数量范围的后台应用的耗电量占总耗电量的 百分比,计算公式为(Q,g、_Q前)/Q总; 计算次数判断单元,用于判断计算后台应用的耗电量占总耗电量的百分比的次数是否 达到设定值,若是则进入最终值计算单元,若否则返回前台应用耗电测试单元; 最终值计算单元,用于计算后台应用占总耗电量百分比的最终值P,计算方式为:将多 次计算的后台应用的耗电量占总耗电量的百分比的平均值作为后台应用占总耗电量百分 比的最终值P; 精确耗电量计算单元,用于根据前台应用的耗电量Q与所述的最终值P计算前台应用 的精确耗电量Qi?,计算公式为:Qi?=Q (1-P)。
【文档编号】G06F11/32GK104281513SQ201310282738
【公开日】2015年1月14日 申请日期:2013年7月5日 优先权日:2013年7月5日
【发明者】梁鑫, 杨昊山, 傅盛, 卢云飞 申请人:贝壳网际(北京)安全技术有限公司, 北京金山网络科技有限公司, 北京金山安全软件有限公司, 珠海市君天电子科技有限公司, 可牛网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1