『 写在前头 』各位安卓手机的新老用户们,在这文章开头我就不耽误工夫跟各位说明手机异常耗电的情况了,想必各位都已亲身体验过,如无有效方法防治,也许还领略了手机电池不耐用的尴尬,明明满电的手机结果一觉起来却发现掉电了百分之三、四十。 以前网上流传的教程多是告诉你通过关闭各种功能来省电,这种「 自废武功 」的方式可以说相当愚蠢,而真正导致你手机异常耗电的其实是那些“不安本分”的应用程序。那么今天这篇教程内容,就是教授各位如何排查找出真正的耗电元凶。 『 从现在起请留意Wakelock 』其实,常驻后台的应用不一定耗电,如果随意查杀、禁止自启反倒会适得其反。那么,判断一款应用是否耗电的有效标准是又什么呢?答案是看它是否频频调用Wakelock。 ▲Wakelock 的英文解释 老机友们对「 Wakelock 」这个术语肯定不陌生,它翻译成中文叫做「 唤醒锁 」。根据Google官方的描述,应用一旦调用了Wakelock,无论手机屏幕开启与否,CPU都会一直保持运行,而无法进入深睡眠(Deep Sleep)状态,待机时CPU频频运作,即便维持在较低频率,所消耗的电量也不可小觑。 因此而言,想要手机达到省电的效果,关键就在于找出并阻止那些任意调用Wakelock的第三方应用。 『 如何找出耗电元凶 』正如你所知,在安卓系统中查看「 电池 」信息就能了解到手机的电量消耗情况,特别是在 Android 6.0 以上的版本中,电量使用情况中还会详细统计出CPU唤醒时间、对于无线网络的使用情况并计算出耗电量等。 ▲自带「电池」中也可查看应用耗电信息 但自带的功能还不够全面,一些隐性的服务与应用往往无法被统计出来,而低版本的安卓系统更对Wakelock置之不理,因此真正的耗电元凶还在逍遥法外。这时候,我们需要使用专业的App来查出那些隐性的耗电应用。 比如「 BetterBatteryStats 」与「 Wakelock Detector 」 BetterBatteryStatsBetterBatteryStats 是一款久负盛名的电量监控App,其中最受欢迎的一项功能无疑就是能够查看App调用Wakelock的频率了。虽然在数据方面无中文显示,但总体使用却并不复杂。 该应用不一定需要Root才可以使用,但如果无Root状态下是无法监控到 Kernel wakelocks 和 alarms 两项数据。 如上图所见,BetterBatteryStats 可查看的项目包括:
综上,使用 BetterBatteryStats 排查应用调用Wakelock情况时,主要排查的项目包括「 Kernel Wakelock 」、「 Partial Wakelocks 」和「 Alarms 」这三项。 排查耗电情况的方法:
除此以外,使用BetterBatteryStats还能够查看CPU在不同时间段的频率、后台进程所消耗资源状态等,并且提供了图表查看,电量消耗一目了然。 Wakelock DetectorWakelock Detector翻译成中文可叫做「 唤醒锁嗅探器 」,所以一看名字就知道这位仁兄是针对Wakelock而生的了。 Wakelock Detector和BeeterBatteryStats一样,可以查看有什么应用调用了屏幕和CPU Wakelock,使用方法也差不多,因此本节就不再加以详述了。 『 将耗电应用打入冷宫 』找到这些频繁调用Wakelock的应用后,即可针对性地作出优化,如将这些应用放置到自动杀进程的列表中,不过有些应用异常顽固,普通杀进程的方法可对付不了它们,如果你想进一步达到省电的目的,不妨阅读以下针对性的教程内容:
|
|