做MTK平台功耗优化这些年,我遇到最多的就是这三类问题:待机功耗下不去、设备莫名其妙被唤醒、外设偷偷在漏电。说白了,它们就像三个“耗电黑洞”,不堵住它们,你的续航优化就是白忙活。今天我就把这三种问题的排查思路和实战解法,一次性讲清楚。一、待机功耗过高问题排查待机功耗高,是最常见的投诉。用户晚上充满电,早上起来掉了20%,这谁能忍?排查思路:先看底电流——用Power Monitor或者MTK的POWER_DEBUG工具,抓一条完整的待机电流曲线。正常深睡电流应该在2~5mA以内(视模组配置而定)。看谁在干活——通过/proc/wakelocks或者/d/tracing,查看哪些内核wakelock没有被释放。我习惯先看PowerManagerService.WakeLocks,这里经常能抓到第三方App的“流氓行为”。看CPU是否在偷跑——用top或者cat /proc/stat看CPU占用率。如果待机时CPU占用率超过5%,那肯定有问题。实战案例:我曾经遇到一个项目,待机电流始终在15mA下不来。查了一圈,发现是Wi-Fi的wlan_wakewakelock一直没释放。最后定位到是Wi-Fi驱动在扫描时没有正确进入低功耗模式。解决方案很