软件之所以会耗电,是因为使用了手机的某种资源。手机各个模块的耗电情况是不同的。如果您的应用程序涉及到以下的耗电场景一点或几点,就有耗电风险。几个典型的耗电场景如下:
1)网络传输,尤其是非Wifi环境。
2)屏幕亮度
3)cpu频率
4)others:GPS、NFC、重力、振动、扬声器、摄像头、闪光灯、内存调度频度
二,耗电测试——powerTutor
简介:
PowerTutor是由美国密歇根大学在谷歌的指导下开发的。它是用来展示google智能手机中主要组件或应用功耗的一种应用程序。例如CPU,网络链接,LCD显示屏,GPS等。它允许开发者很直观的看到应用的功耗信息以优化应用的设计。因此,我们可以使用PowerTutor来监视产生功耗的任何一款应用程序。
方法:
1.对比旧版2.对比竞争对手3.静置测试
思路:
手机电量饱和;拔掉USB、电源线等;几台手机可以同时进行;记录好手机型号和系统;关闭所有不相关软件;同一环境:手机、网络、操作、时长……
使用:
图示一:
注释:上图为我们展示的就是PowerTutor启动之后的画面,我们点击StartProfiler开始监测;
图示二:
注释:上图是我们开始监测之后的应用界面,此时ApplicationViewer按钮和SystemViewer按钮为可用状态,我们可以通过点击ApplicationViewer很直观的看到Android系统组件如CPU,LCD,3G,GPS的功耗信息。
图示三:
注释:该图描述了Android系统主要组件的功耗图表,该图标向我们展示了当前系统中CPU和LCD为主要功耗源。PieView和StartView是信息展示的另外一种方式。当然,除了查看系统组件的功耗情况,我们也可以通过点击ApplicationView来查看当前系统中正在运行的进程所产生的功耗。如下图;
图示四:
注释:上图向我们展示了当前系统中正在运行的应用程序所产生的功耗,当然这些功耗包含了LCD,CPU,GPS,3G等产生功耗的总和,我们也可以单独监测某一项指标,如应用程序在CPU上所产生的功耗。如下图;
图示五:
结束。
实例:
新旧版本对比:“新版动态壁纸挂后台耗电”是“旧版动态壁纸挂后台耗电”的1.7倍,需优化。
竞品对比:在同类天气产品中,同样的home键挂后台相同时间,某某天气软件EX耗电十分严重,是其他天气产品的10倍以上,且新版本耗电比旧版本更严重,需优化!
静置测试:在某某桌面侧边栏界面,未进行任何操作的时候,CPU耗电在60J左右