一种获取移动终端上应用程序耗电量的方法和装置转让专利

申请号 : CN201410269854.X

文献号 : CN105187608B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 秦守强廖志

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明公开了一种获取移动终端上应用程序耗电量的方法和装置,以较低的成本,方便地测量出移动终端上应用程序的耗电量。所述方法包括:判断移动终端能否输出准确的电流值;若移动终端能够输出准确的电流值,则测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,测试程序安装运行在移动终端上;根据电流采样得到的采样值,测试程序绘制被测应用程序的耗电量曲线图后在移动终端上显示。本发明的方法,一方面,在对电流采样时,无需额外增加昂贵的仪器设备,不仅成本低廉,而且操作起来非常便捷;另一方面,测试结果以耗电量曲线图的方式显示在移动终端上,不仅显示结果直观,而且查看方便,间接地降低了测试的人力成本。

权利要求 :

1.一种获取移动终端上应用程序耗电量的方法,其特征在于,所述方法包括:判断移动终端能否输出准确的电流值;

若所述移动终端能够输出准确的电流值,则以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样;

根据所述电流采样得到的采样值,绘制所述被测应用程序的耗电量曲线图后在所述移动终端上显示;

所述被测应用程序运行时对应所述移动终端上若干工作的硬件模块;

所述方法还包括:

记录所述硬件模块在所述被测应用程序运行期间的使用状况信息;

根据所述使用状况信息,绘制所述硬件模块的使用状况曲线图后在所述移动终端上显示。

2.根据权利要求1所述的方法,其特征在于,

所述以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,包括:以预先设置的采样频率,对所述工作的硬件模块的输出电流进行采样。

3.根据权利要求2所述的方法,其特征在于,所述采样频率量纲为次/秒,所述采样频率为[4,10]中的任意值。

4.根据权利要求2所述的方法,其特征在于,所述耗电量曲线图的横轴为采样时刻,所述耗电量曲线图的纵轴为电流值;

所述根据所述使用状况信息,绘制所述硬件模块的使用状况曲线图后在所述移动终端上显示,包括:根据所述使用状况信息,以所述耗电量曲线图的横轴为横轴,绘制所述硬件模块的使用状况曲线图后在所述移动终端上显示,所述使用状况曲线图的纵轴为所述硬件模块的使用状况信息。

5.根据权利要求1至4任意一项所述的方法,其特征在于,所述方法还包括:在对移动终端上运行的被测应用程序进行电流采样的期间,对所述移动终端上除所述被测程序之外的应用程序进行禁止运行。

6.一种获取移动终端上应用程序耗电量的装置,其特征在于,所述装置包括判断模块、采样模块和第一绘制模块;

所述判断模块,用于判断移动终端能否输出准确的电流值;

所述采样模块,用于若所述判断模块判断所述移动终端能够输出准确的电流值,则以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样;

所述第一绘制模块,用于根据所述电流采样得到的采样值,绘制所述被测应用程序的耗电量曲线图后在所述移动终端上显示;

所述被测应用程序运行时对应所述移动终端上若干工作的硬件模块;

所述装置还包括:

记录模块,用于记录所述硬件模块在所述被测应用程序运行期间的使用状况信息;

第二绘制模块,用于根据所述使用状况信息,绘制所述硬件模块的使用状况曲线图后在所述移动终端上显示。

7.根据权利要求6所述的装置,其特征在于,所述采样模块包括:硬件电流采样单元,用于以预先设置的采样频率,对所述工作的硬件模块的输出电流进行采样。

8.根据权利要求7所述的装置,其特征在于,所述采样频率量纲为次/秒,所述采样频率为[4,10]中的任意值。

9.根据权利要求7所述的装置,其特征在于,第二绘制模块,具体用于根据所述使用状况信息,以所述耗电量曲线图的横轴为横轴,绘制所述硬件模块的使用状况曲线图后在所述移动终端上显示,所述使用状况曲线图的纵轴为所述硬件模块的使用状况信息。

10.根据权利要求6至9任意一项所述的装置,其特征在于,所述装置还包括:禁用模块,用于所述采样模块在对移动终端上运行的被测应用程序进行电流采样的期间,对所述移动终端上除所述被测程序之外的应用程序进行禁止运行。

说明书 :

一种获取移动终端上应用程序耗电量的方法和装置

技术领域

[0001] 本发明涉及移动通信领域,具体涉及一种获取移动终端上应用程序耗电量的方法和装置。

背景技术

[0002] 现有的移动终端是以智能终端,例如智能手机、平板电脑为主体的终端。这一类移动终端的特点是显示器件(例如,显示屏)比较大,可以运行丰富的应用程序(APPlication,APP)。正是由于这些特点,导致移动终端的电量消耗非常大,而由于受其先天的限制,移动终端的电池续航能力是有限的。因此,通过测试应用程序的耗电量,以技术手段减小移动终端应用程序的耗电量,从而优化应用程序的产品性能,一直是业界比较关注的问题。
[0003] 现有的一种获取移动终端上应用程序耗电量的方法是使用一种称作电流仪的设备,配合假电池进行移动终端上应用程序耗电量的测试。
[0004] 现有的获取移动终端上应用程序耗电量的方法,主要存在如下缺陷:
[0005] 1)测试成本高。由于测试所需要的电流仪价格比较昂贵,例如,某种类型的电流仪单价20万左右,显然,成本过高。
[0006] 2)可操作性不强。需要配合假电池,而有些移动终端的电池并不能拆卸,导致使用假电池操作起来比较复杂,而且对于需要在户外进行移动测试的场景,例如,对地图导航等应用程序耗电量的测试,携带电流仪也极为不便;
[0007] 3)测试结果查看不便。对应用程序耗电量的测试结果往往显示在电流仪上,结果显示不仅不直观,而且在电流仪上显示,可能界面不友好,不及在移动终端上显示查看起来方便。

发明内容

[0008] 本发明提供一种获取移动终端上应用程序耗电量的方法和装置,以较低的成本,方便地测量出移动终端上应用程序的耗电量。
[0009] 本发明实施例提供一种获取移动终端上应用程序耗电量的方法,所述方法包括:
[0010] 判断移动终端能否输出准确的电流值;
[0011] 若所述移动终端能够输出准确的电流值,则测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,所述测试程序安装运行在所述移动终端上;
[0012] 根据所述电流采样得到的采样值,所述测试程序绘制所述被测应用程序的耗电量曲线图后在所述移动终端上显示。
[0013] 本发明另一实施例提供一种获取移动终端上应用程序耗电量的装置,所述装置包括测试程序和判断模块,所述测试程序包括采样模块和第一绘制模块;
[0014] 所述判断模块,用于判断移动终端能否输出准确的电流值;
[0015] 所述采样模块,用于若所述判断模块判断所述移动终端能够输出准确的电流值,则以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,所述测试程序安装运行在所述移动终端上;
[0016] 所述第一绘制模块,用于根据所述电流采样得到的采样值,绘制所述被测应用程序的耗电量曲线图后在所述移动终端上显示。
[0017] 从上述本发明实施例可知,一方面,在测试应用程序耗电量时,只需要测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,而测试程序安装运行在移动终端上,即,在对电流采样时,无需额外增加昂贵的仪器设备,不仅成本低廉,而且对用户而言,操作起来非常便捷;另一方面,测试结果以耗电量曲线图的方式显示在移动终端上,不仅显示结果直观,而且查看方便,也间接地降低了测试的人力成本。

附图说明

[0018] 图1是本发明实施例提供的获取移动终端上应用程序耗电量的方法的基本流程示意图;
[0019] 图2是本发明实施例提供的绘制得到被测应用程序的耗电量曲线图后在移动终端上显示的示意图
[0020] 图3是本发明实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图;
[0021] 图4是本发明另一实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图;
[0022] 图5是本发明另一实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图;
[0023] 图6-a是本发明另一实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图;
[0024] 图6-b是本发明另一实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图;
[0025] 图6-c是本发明另一实施例提供的获取移动终端上应用程序耗电量的装置逻辑结构示意图。

具体实施方式

[0026] 本发明提供一种获取移动终端上应用程序耗电量的方法,所述方法包括:判断移动终端能否输出准确的电流值;若所述移动终端能够输出准确的电流值,则测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,所述测试程序安装运行在所述移动终端上;根据所述电流采样得到的采样值,所述测试程序绘制所述被测应用程序的耗电量曲线图后在所述移动终端上显示。本发明还提供相应的获取移动终端上应用程序耗电量的装置。以下分别进行详细说明。
[0027] 请参阅附图1,是本发明实施例提供的获取移动终端上应用程序耗电量的方法的基本流程,其可以应用于Andriod等操作系统的移动终端,主要包括步骤S101至步骤S103,详细说明如下:
[0028] S101,判断移动终端能否输出准确的电流值。
[0029] 移动终端能否输出准确的电流值,是能否准确测出应用程序耗电量的前提。对于出厂合格的移动终端,可直接判断为是可以输出准确的电流值的移动终端。另一种判断移动终端能否输出准确的电流值的简单方式是:测试人员可以先查看移动终端电池的标称容量,若获知了该移动终端的屏幕点亮时的电量消耗,则只点亮屏幕(而不开启其他应用程序)一段时间,通过该段时间消耗的电量即可判断移动终端能否输出准确的电流值。例如,某个移动终端电池的标称容量是2000毫安时,该移动终端电池的屏幕点亮时的电量消耗是400毫安分钟,则在该移动终端电池充满后,持续点亮该移动终端屏幕5分钟,若电池的剩余电量为98%左右,则大致可以判断移动终端能够输出准确的电流值。对于一些典型型号的移动终端,例如,Google Nexus4、Google Nexus5等,可以通过命令/sys/class/power_supply/battery/uevent获取电流值,从而判断移动终端能否输出准确的电流值。
[0030] S102,若移动终端能够输出准确的电流值,则测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,测试程序安装运行在移动终端上。
[0031] 在本发明实施例中,测试程序和被测应用程序都安装运行在移动终端上,其中,测试程序可以是随身调测平台即随身调(GT)。所谓随身调(GT),是直接运行在移动终端上的集成调测环境(Integrated Debug&Test Environment,IDTE)。利用GT,仅凭一部移动终端而无需连接电脑,软件开发/测试人员即可对应用程序进行快速的性能测试(例如CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash日志查看、网络数据包的抓取和应用程序内部参数的调试、真机代码耗时统计等等,GT的最大优点在于软件开发/测试人员可以在任意真实场所、任何时候进行如上一系列事情,实现应用程序(APP)的场测。
[0032] 在本发明实施例中,被测应用程序运行时,其对应移动终端上若干工作的硬件模块。例如,对于一个正在运行的导航应用程序,其对应的硬件模块包括CPU/GPU、GPS模块和屏幕等。测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,实际上是测试程序以预先设置的采样频率,对这些工作的硬件模块的输出电流进行采样。
[0033] 在本发明一个实施例中,采样频率量纲为次/秒,采样频率可以为[4,10]中的任意值,例如,对于某些类型的移动终端,进行电流采样时以10次/秒的采样频率就足以捕获到移动终端的电流变化。
[0034] S103,根据电流采样得到的采样值,测试程序绘制被测应用程序的耗电量曲线图后在移动终端上显示。
[0035] 在本发明实施例中,被测应用程序的耗电量曲线图,其横轴为采样时刻,纵轴为电流值,附图2是绘制得到被测应用程序的耗电量曲线图后在移动终端上显示的一个实施例。
[0036] 根据电流采样得到的采样值,测试程序绘制被测应用程序的耗电量曲线图后在移动终端上显示的同时,获取移动终端上应用程序耗电量的方法还可以包括S1031和S1032:
[0037] S1031,测试程序记录硬件模块在被测应用程序运行期间的使用状况信息。
[0038] 在本发明实施例中,硬件模块在被测应用程序运行期间的使用状况信息可以是某个硬件模块对应的某种方法在单位时间内调用的次数、CPU在每一秒的占用百分比或者某个硬件模块对应的、和耗电强相关的方法调用的次数,等等。
[0039] S1032,根据使用状况信息,测试程序以前述得到的耗电量曲线图的横轴为横轴,绘制硬件模块的使用状况曲线图后在移动终端上显示,其中,使用状况曲线图的纵轴为硬件模块的使用状况信息。
[0040] 测试程序之所以以前述得到的耗电量曲线图的横轴为横轴,是因为考虑到时间对齐便于比较。实际上,当以前述得到的耗电量曲线图的横轴为横轴,绘制硬件模块的使用状况曲线图时,对比电流波动和若干个硬件模块的曲线或点,可以甄别出同一时刻或时间段,耗电的主要硬件模块和次要硬件模块。
[0041] 需要说明的是,在附图1示例的获取移动终端上应用程序耗电量的方法中,可以是对同一款被测应用程序在功能优化前后进行的若干次的耗电量测试,也可以是类似被测应用程序之间的耗电量对比测试。在对类似被测应用程序之间进行耗电量对比测试时,需要保证这些被测应用程序测试环境的公平一致,因此,经常采用几台同样的移动终端同时运行几个对比的被测应用程序的方式。这种同场景同时测试的情况,需要提前对移动终端进行校准,保证选出的几个移动终端的主要耗电模块(例如网络模块、GPS模块、CPU/GPU和屏幕等)在经典耗用场景下近似一致。
[0042] 如前所述,测试程序和被测应用程序都安装运行在同一移动终端上,因此,采样的电流值实际上包含了移动终端耗电净值、被测应用程序耗电量和测试程序耗电量三部分,实际计算被测应用程序耗电量应加以考虑。又因为获取电流的耗电测试无法细分到每个被测应用程序,因此,在对某个被测应用程序测试时应尽量保证无其他应用程序的干扰,即,测试程序在对移动终端上运行的被测应用程序进行电流采样的期间,对所述移动终端上除被测程序和测试程序之外的应用程序进行禁止运行。
[0043] 从上述本发明实施例提供的获取移动终端上应用程序耗电量的方法可知,一方面,在测试应用程序耗电量时,只需要测试程序以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,而测试程序安装运行在移动终端上,即,在对电流采样时,无需额外增加昂贵的仪器设备,不仅成本低廉,而且对用户而言,操作起来非常便捷;另一方面,测试结果以耗电量曲线图的方式显示在移动终端上,不仅显示结果直观,而且查看方便,也间接地降低了测试的人力成本。
[0044] 以下对用于执行上述获取移动终端上应用程序耗电量的方法的本发明实施例的获取移动终端上应用程序耗电量的装置进行说明,其基本逻辑结构参考图3。为了便于说明,仅仅示出了与本发明实施例相关的部分。附图3示例的获取移动终端上应用程序耗电量的装置主要包括测试程序301和判断模块302,其中,测试程序301可以包括采样模块303和第一绘制模块304,各模块详细说明如下:
[0045] 判断模块302,用于判断移动终端能否输出准确的电流值;
[0046] 采样模块303,用于若判断模块302判断移动终端能够输出准确的电流值,则以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样,所述测试程序安装运行在所述移动终端上;
[0047] 第一绘制模块304,用于根据电流采样得到的采样值,绘制被测应用程序的耗电量曲线图后在移动终端上显示。
[0048] 需要说明的是,以上附图3示例的获取移动终端上应用程序耗电量的装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将所述获取移动终端上应用程序耗电量的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成,例如,前述的采样模块,可以是具有执行前述若判断模块(或判断器)判断移动终端能够输出准确的电流值,则以预先设置的采样频率对移动终端上运行的被测应用程序进行电流采样的硬件,例如采样器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备;再如前述的第一绘制模块,可以是根据电流采样得到的采样值,绘制被测应用程序的耗电量曲线图后在移动终端上显示的硬件,例如第一绘制器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备(本说明书提供的各个实施例都可应用上述描述原则)。
[0049] 附图3示例的获取移动终端上应用程序耗电量的装置中,被测应用程序运行时对应移动终端上若干工作的硬件模块。附图3示例的采样模块303可以包括硬件电流采样单元401,如附图4所示本发明另一实施例提供的获取移动终端上应用程序耗电量的装置。硬件电流采样单元401用于以预先设置的采样频率,对工作的硬件模块的输出电流进行采样。
[0050] 附图4示例的获取移动终端上应用程序耗电量的装置中,采样频率量纲为次/秒,采样频率为[4,10]中的任意值。
[0051] 附图4示例的获取移动终端上应用程序耗电量的装置中,耗电量曲线图的横轴为采样时刻,纵轴为电流值。附图4示例的获取移动终端上应用程序耗电量的装置还可以包括记录模块501和第二绘制模块502,如附图5所示本发明另一实施例提供的获取移动终端上应用程序耗电量的装置,其中:
[0052] 记录模块501,用于在第一绘制模块304绘制被测应用程序的耗电量曲线图的同时,记录硬件模块在被测应用程序运行期间的使用状况信息;
[0053] 第二绘制模块502,用于根据使用状况信息,以耗电量曲线图的横轴为横轴,绘制硬件模块的使用状况曲线图后在移动终端上显示,使用状况曲线图的纵轴为所述硬件模块的使用状况信息。
[0054] 附图3至附图5任一示例的获取移动终端上应用程序耗电量的装置还可以包括禁用模块601,如附图6-a至附图6-c任一示例所示的获取移动终端上应用程序耗电量的装置。禁用模块601用于采样模块303在对移动终端上运行的被测应用程序进行电流采样的期间,对移动终端上除被测程序和测试程序之外的应用程序进行禁止运行。
[0055] 需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0056] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
[0057] 以上对本发明实施例所提供的获取移动终端上应用程序耗电量的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。