[0030] 在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
[0031] 可以理解,在本发明的各实施方式中,终端可以是移动终端,如平板电脑、手机等,也可以是台式计算机等非移动终端。模拟终端是指可以模拟被测终端中的所有被测应用的运行的设备,例如,被测终端为手机,则模拟终端可以是与该手机性能相同或极相近的手机。其中,模拟终端可以模拟被测终端所有应用的运行,比如,模拟通话功能、游戏功能、聊天软件功能、定位功能、相机拍摄功能、以及终端的休眠模式等等,此外,在模拟终端中预留有可添加模块组功能,当被测终端中一些应用模拟终端不具有时,可以随时通过添加模拟该新功能。
[0032] 此外,可以理解,在本发明的各实施方式中,模拟被测应用的运行是指不同程度地模拟应用中各功能的使用,即尽量和用户使用被测应用时的情况一样。
[0033] 此外,可以理解,在本发明的各实施方式中,在模拟终端进行应用运行模拟时,是按照各被测应用的开启时刻,依次进行模拟的,即在模拟一个被测应用的运行结束后,再开始开启下一个被测应用进行模拟,模拟的时长均与被测应用的实际运行时长相同。在模拟每一个被测应用的运行结束后可获得给被测应用的用电量模拟测试值,对于模拟终端模拟各被测应用的用电量的测量,可采用现有的各种电量测试方法,在此不做限制。
[0034] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
[0035] 本发明第一实施方式涉及一种终端用电量的测试方法。图1是该终端用电量的测试方法的流程示意图。
[0036] 具体地说,如图1所示,该终端用电量的测试方法包括以下步骤:
[0037] 在步骤101中,获取被测终端在测量条件下运行的多个被测应用的使用数据,其中,使用数据包括各被测应用的开启时刻和运行时长。
[0038] 此后进入步骤102,向该被测终端的模拟终端发送使用数据,供模拟终端根据使用数据中的开启时刻依次模拟各被测应用的运行,同时测试在模拟各被测应用的运行时模拟终端的用电量,其中,模拟终端模拟各被测应用运行的时长与使用数据中对应的被测应用的运行时长相同。
[0039] 此后进入步骤103,将用电量作为相对应的被测应用在测量条件内的用电量模拟测试值。
[0040] 此后结束本流程。
[0041] 优选地,在上述步骤101中,获取的使用数据包括被测终端在满足测量条件的初始时刻所具有的剩余电量。并且在上述步骤102中,模拟终端在开始模拟第一个被测应用的运行时所具有电量与该剩余电量相同。
[0042] 被测试终端和模拟终端的剩余电量相同,可以更好的对被测终端的实际用电情况进行模拟,提高电量测试准确度,更好的帮助终端生产商做好应用耗电的使用测试和监控。
[0043] 此外,可以理解,在本发明的其他实施方式中,初始模拟时模拟终端的剩余电量也可以与被测终端的初始剩余电量不同,在次不做限制。
[0044] 优选地,被测终端和模拟终端都为移动终端,如手机或平板电脑,而被测终端和模拟终端的操作系统都为安卓(Android)。在上述步骤101中,通过监视被测设备的应用框架层,获取被测终端中各被测应用的开启时刻和运行时长,以及其他使用数据。并且在上述步骤102中,模拟终端通过调用该模拟终端应用框架层中的接口实现对各被测应用的运行模拟。
[0045] 在实际应用中,可以通过应用框架层的接口可实现终端对任何应用的监控和功能模拟,而不会受到应用自身设置的限制,即克服了在一个应用中无法调用另一个应用的问题。优选地,本发明中的被测终端和模拟终端都采用同样的操作系统,如Android、IOS(一种终端操作系统)、Windows(一种终端操作系统)等等,更优地,可采用同样操作系统的相同版本,如Android最新的系统版本。
[0046] 优选地,上述步骤101中,获取的使用数据还包括被测终端在各被测应用的开启时刻具有的剩余电量和该被测终端在测量条件结束时具有的剩余电量。并且在上述步骤103之后,该方法还包括以下步骤:
[0047] 获取基于各被测应用的用电量计算值和用电量模拟测试值生成的被测终端的用电量数值对比结果,其中,各被测应用的用电量计算值是基于使用数据中的剩余电量计算得出的。
[0048] 例如,用户在使用被测终端的过程中,使用了一系列的应用程序,比如,通话,音乐,视频,网页(暂不包括多线程应用)等,可记录每个应用程序开启和结束时刻被测终端的剩余电量情况,比如,通话100%-90%,消耗了10%的电量,用时20分钟。音乐90%-85%,消耗了5%的电量,用时10分钟....这些数据都会被保留,当测试条件结束后,会将此数据发送至模拟终端。模拟终端根据数据内容,调用应用框架层的接口程序进行模拟操作,操作完毕后,也会形成一份耗电量记录,如通话100%-85%,消耗了15%的电量,用时20分钟;音乐85%-78%,消耗了7%的电量,用时10分钟....。然后将得到的两组数据进行对比,生成对比数据供用户(如终端生产商)进行分析。生产商可以根据这一对比数据进行应用模块以及终端耗电量的分析和改进,如能够知道哪个应用模块在同样使用的时间内消耗较大的电量,从而给生产商提供改进点和方向。可以理解,该对比数据可以以报告的形式发送回被测终端,也可以发送到服务器或者保存于模拟终端中,供用户查看。
[0049] 自动生成用电量测试对比数据,可更方便用户(如终端生产商)根据测试对比数据对被测终端各应用的耗电量情况进行分析,准确有效地对被测终端的耗电相关性能进行改进。
[0050] 优选地,步骤101中所述的测量条件为下列条件中的一种:
[0051] 在预定测量时间内。
[0052] 在预先设定的被测终端剩余电量范围内。
[0053] 在接收到开始测量指令和结束测量指令的时间内。
[0054] 此外,可以理解,在本发明的其他实施方式中,也可以采用其他方式设定测量条件,在此不做限制。
[0055] 基于被测终端上各应用的实际使用数据,通过在模拟终端上模拟各应用的运行,可自动测量一定测量条件下在被测终端中打开过的各应用的用电量,测量方式灵活准确,可为用户提供各应用准确的用电量模拟测试值,特别地,能够极大的方便终端的生产商根据用电量模拟测试值对产品耗电量相关的性能进行评估和改进。
[0056] 本发明第二实施方式涉及一种测试终端用电量的方法。图2是该测试终端用电量的方法的流程示意图。
[0057] 具体地说,如图2所示,该测试终端用电量的方法包括以下步骤:
[0058] 在步骤201中,模拟终端获取被测终端在测量条件下运行的多个被测应用的使用数据,其中,使用数据包括各被测应用的开启时刻和运行时长。
[0059] 此后进入步骤202,模拟终端根据使用数据中的开启时刻依次模拟各被测应用的运行,同时测试在模拟各被测应用的运行时模拟终端的用电量,其中,模拟终端模拟各被测应用运行的时长与使用数据中对应的被测应用的运行时长相同。
[0060] 此后进入步骤203,将测试所得的用电量作为相对应的被测应用在测量条件内的用电量模拟测试值,并将用电量模拟测试值发送至被测终端。
[0061] 此后结束本流程。
[0062] 优选地,在上述步骤201中,获取的使用数据包括被测终端在满足测量条件的初始时刻所具有的剩余电量。并且在上述步骤202中,模拟终端在开始模拟第一个被测应用的运行时所具有电量与剩余电量相同。
[0063] 被测试终端和模拟终端的剩余电量相同,可以更好的对被测终端的实际用电情况进行模拟,提高电量测试准确度,更好的帮助终端生产商做好应用耗电的使用测试和监控。
[0064] 此外,可以理解,在本发明的其他实施方式中,初始模拟时模拟终端的剩余电量也可以与被测终端的初始剩余电量不同,在次不做限制。
[0065] 优选地,在本实施方式中,被测终端和模拟终端都为移动终端,如手机或平板电脑,而被测终端和模拟终端的操作系统都为安卓(Android)。
[0066] 优选地,在本实施方式中,在上述步骤202中,模拟终端通过调用该模拟终端应用框架层中的接口实现对各被测应用的运行模拟。相应地,被测终端也可以通过监视被测设备的应用框架层,获取被测终端中各被测应用的开启时刻和运行时长。
[0067] 优选地,在上述步骤201获取的使用数据还包括被测终端在各被测应用的开启时刻具有的剩余电量和该被测终端在测量条件结束时具有的剩余电量。并且在上述步骤203之后,还包括以下步骤:
[0068] 基于各被测应用的用电量计算值和用电量模拟测试值生成被测终端的用电量数值对比结果,然后发送至被测终端或相关服务器进行分析,其中,各被测应用的用电量计算值是基于使用数据中的剩余电量计算得出的。
[0069] 自动生成用电量测试对比数据,可更方便用户(如终端生产商)根据测试对比数据对被测终端各应用的耗电量情况进行分析,准确有效地对被测终端的耗电相关性能进行改进。
[0070] 优选地,步骤201所述的测量条件为下列条件中的一种:
[0071] 在预定测量时间内。
[0072] 在预先设定的被测终端剩余电量范围内。
[0073] 在接收到开始测量指令和结束测量指令的时间内。
[0074] 此外,可以理解,在本发明的其他实施方式中,也可以采用其他方式设定测量条件,在此不做限制。
[0075] 可通过模拟被测终端的实际运行,自动准确测量被测终端各应用的用电量,为用户提供各应用准确的用电量模拟测试值,特别地,能够极大的方便终端的生产商根据用电量模拟测试值对产品耗电量相关的性能进行评估和改进。本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable Array Logic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
[0076] 本发明第三实施方式涉及一种终端用电量的测试装置。图3是该终端用电量的测试装置的结构示意图。
[0077] 具体地说,如图3所示,该终端用电量的测试装置包括:
[0078] 第一获取单元,用于获取被测终端在测量条件下运行的多个被测应用的使用数据,其中,使用数据包括各被测应用的开启时刻和运行时长。
[0079] 发送单元,用于向该被测终端的模拟终端发送使用数据,供模拟终端根据使用数据中的开启时刻依次模拟各被测应用的运行,同时测试在模拟各被测应用的运行时模拟终端的用电量,其中,模拟终端模拟各被测应用运行的时长与使用数据中对应的被测应用的运行时长相同。
[0080] 第一确定单元,用于将用电量作为相对应的被测应用在测量条件内的用电量模拟测试值。
[0081] 优选地,第一获取单元通过监视被测设备的应用框架层,获取被测终端中各被测应用的开启时刻和运行时长。并且发送单元向模拟终端发送使用数据后,模拟终端通过调用该模拟终端应用框架层中的接口实现对各被测应用的运行模拟。
[0082] 优选地,上述第一获取单元获取的使用数据包括被测终端在满足测量条件的初始时刻所具有的剩余电量。并且模拟终端在开始模拟第一个被测应用的运行时所具有电量与剩余电量相同。
[0083] 优选地,上述第一获取单元获取的使用数据还包括被测终端在各被测应用的开启时刻具有的剩余电量和该被测终端在测量条件结束时具有的剩余电量。并且该测试装置还包括以下单元:
[0084] 对比单元,用于获取基于各被测应用的用电量计算值和用电量模拟测试值生成的被测终端的用电量数值对比结果,其中,各被测应用的用电量计算值是基于使用数据中的剩余电量计算得出的。
[0085] 优选地,上述测量条件为下列条件中的一种:
[0086] 在预定测量时间内;
[0087] 在预先设定的被测终端剩余电量范围内;
[0088] 在接收到开始测量指令和结束测量指令的时间内。
[0089] 第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
[0090] 本发明第四实施方式涉及一种测试终端用电量的模拟终端。图4是该测试终端用电量的模拟终端的结构示意图。
[0091] 具体地说,如图4所示,该测试终端用电量的模拟终端包括:
[0092] 第二获取单元,用于获取被测终端在测量条件下运行的多个被测应用的使用数据,其中,使用数据包括各被测应用的开启时刻和运行时长。
[0093] 模拟单元,用于根据使用数据中的开启时刻依次模拟各被测应用的运行,同时测试在模拟各被测应用的运行时模拟终端的用电量,其中,模拟终端模拟各被测应用运行的时长与使用数据中对应的被测应用的运行时长相同。
[0094] 第二确定单元,用于将测试所得的用电量作为相对应的被测应用在测量条件内的用电量模拟测试值。
[0095] 优选地,上述第二获取单元获取的使用数据包括被测终端在满足测量条件的初始时刻所具有的剩余电量。并且上模拟单元在开始模拟第一个被测应用的运行时所具有电量与剩余电量相同。
[0096] 优选地,优选地,上述模拟单元通过调用该模拟终端应用框架层中的接口实现对各被测应用的运行模拟。相应地,被测终端也可以通过监视被测设备的应用框架层,获取被测终端中各被测应用的开启时刻和运行时长。
[0097] 优选地,上述第二获取单元获取的使用数据还包括被测终端在各被测应用的开启时刻具有的剩余电量和该被测终端在测量条件结束时具有的剩余电量。并且该装置还包括以下单元:
[0098] 生成单元,用于基于各被测应用的用电量计算值和用电量模拟测试值生成被测终端的用电量数值对比结果,然后发送至被测终端或相关服务器进行分析,其中,各被测应用的用电量计算值是基于使用数据中的剩余电量计算得出的。
[0099] 第二实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
[0100] 本发明的第五实施方式涉及一种移动终端用电量的测试方法。优选地,在本实施方式中,移动终端的系统以安卓系统(Android)为例进行说明。
[0101] 具体地说,本实施方式中的测试方法通过采用与被测移动终端类型相近的模拟终端实现。首先,可以利用被测终端安装的应用软件(APP)记录用户使用其他各种应用的次序(即各应用的开启时刻)和运行时长,记录的开始时刻可以是用户设定的开始结束时刻,也可以是从用户设定的或默认终端剩余电量开始记录,当终端剩余电量减少到另一值时结束记录。优选地,该应用软件主要通过三个步骤完成对使用数据的获取:
[0102] 1)监视被测终端应用框架层中的各接口。被测终端的用户调用Android系统中的应用(即被测应用)时,应用会调用Android接口层,从而实现功能的运转。通过监视设备的接口层,可以获得用户调用各个接口的内容和运行时间。同时用户可设置一个监视范围,即从多少电量开始启动监视,直到剩余多少电量后,关闭监视。此外,在开始和结束监视时会记录被测终端的剩余电量。
[0103] 2)记录汇总监视数据流。将上一步骤获得的监视数据进行实时汇总,汇总的数据可以按照各应用的开启时刻进行排序。
[0104] 3)发送使用数据,当达到记录结束的电量后,关闭对被测终端应用框架层接口的监视,将汇总的使用数据发送出去。此处可以将使用数据直接发送给指定的模拟终端,也可以发送至服务器,由服务器根据具体设置发送给相应的模拟终端进行模拟测试。
[0105] 其次,模拟终端根据接收到的使用数据对各被测应用进行模拟运行,然后得到相对应的用电量模拟测试值。其中,模拟终端上包括有模拟设备组和数据分析对比器。具体地:
[0106] 1、模拟设备组缺省配备有多个Android设备常用的基本应用,并可以进行应用添加和修改,模块组根据接收到的使用数据,自动配备符合使用数据的测试应用和相应的运行时间。所谓自动配备符合使用数据的过程,是指根据接收到的使用数据设置各应用的运行顺序,并自动选择相应的应用、配置运行时间长短以及设置一些针对各应用的简单的操作组合方式(操作组合方式用于模拟用户开启各应用的相应功能)。与被测终端中应用的实现过程一样,在模拟各被测应用时,模拟终端通过调用应用框架层中的接口实现应用中的各种功能。在此列举现有Android系统中移动终端常具有的12中应用:
[0107] (1)模拟3D-2D(三维-二维)动画功能,该功能主要针对Android设备的游戏和2D\3D应用而进行模拟运行。
[0108] (1)模拟通话功能,能进行通话功能的实现,实现主叫外拨功能。
[0109] (2)模拟浏览器功能,能够进行浏览器的操作开启和网页跳转功能。
[0110] (3)微信开启,由于微信程序本身预制了被调用接口,因此,可以在本测试终端中对微信功能进行调用和打开。实现用户操作微信的模拟。
[0111] (4)模拟本地音频播放功能,能进行本地音频的播放,实现音频播放器的功能。
[0112] (5)GPS(全球定位系统)定位功能,将调用卫星搜索功能,模拟用户使用地图等导航软件的功能。
[0113] (6)模拟相机对焦功能,该功能是调用应用框架层的相机功能,实现普通相机的调用,如进行取景功能,模拟用户取景。
[0114] (7)模拟发送短信功能,能够进行短信发出功能的实现。
[0115] (8)微博开启功能,由于微博程序本身预制了被调用接口,因此,可以在模拟终端中对微博功能进行调用和打开。实现用户操作微博的模拟。
[0116] (9)QQ(一种聊天软件的名称)开启功能,由于QQ程序本身预制了被调用接口,因此,可以在模拟终端中对QQ功能进行调用和打开。实现用户操作QQ的模拟。
[0117] (10)模拟本地视频播放功能,能进行本地视频的播放,实现视频播放器的功能。
[0118] (11)休眠方式,可以实现手机待机时的状态。
[0119] 2、按照使用数据中各被测应用的开启时刻对模拟的各被测应用进行排序,并设定模拟各应用的运行时长(模拟时运行时长与实际被测应用的运行时长相同),这些数据会在模块设备组中形成一份运行档,模拟终端根据该运行档模拟各被测应用的运行。例如,如图5中所示的一实例中的运行档,由图可知,模拟终端在开始模拟时的剩余电量必须与被测终端开始记录时的模拟电量相同(可通过充放电使之保持相同),否则会影响测量结果。
[0120] 3、数据分析对比器会将模拟终端模拟各被测应用运行时得到的各被测应用的用电量模拟测试值和使用数据中被测应用在开启和关闭时刻被测终端的电量值进行对比,生成一份报告发送给用户,供用户参考。
[0121] 需要说明的是,本发明各设备实施方式中提到的各单元都是逻辑单元,在物理上,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现,这些逻辑单元本身的物理实现方式并不是最重要的,这些逻辑单元所实现的功能的组合才是解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,这并不表明上述设备实施方式并不存在其它的单元。
[0122] 需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0123] 虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。