20180828 BugReport WifFi 信号差导致的功耗大现象
程序员文章站
2024-02-03 22:09:22
...
1.WifFi 信号差导致的功耗大现象
2018-08-21 18:28:38 - 00:48:13,期间 6 小时 20 分钟内 耗电 100% - 87%,存在大功耗问题
2. 功耗异常原因
2.1. WiFi 信号强度差,需要不断改变功率,导致CPU的不断唤醒
具体唤醒如下
Kernel Wakeup Reasons:
Show entriesSearch:
Ranking Name Duration / Hr Count / Hr Total Duration Total Count Show Count vs Time
0 unknown 22m50s941ms 1697.20 6h32m14.3s 29135
1 Abort:Pending Wakeup Sources: WLAN AHB ISR 8m10s819ms 914.69 2h20m25.655s 15702
2 Abort:Pending Wakeup Sources: WLAN TX THREAD WLAN AHB ISR 2m37s602ms 285.38 45m5.493s 4899
3 Abort:Last active Wakeup Source: WLAN AHB ISR 2m13s379ms 240.53 38m9.668s 4129
4 Abort:Last active Wakeup Source: pmicAuxadc irq wakelock 40s609ms 70.25 11m37.124s 1206
2.2. 手机信号强度同样也不尽如人意
moderate 持续了 6h 19m 32s 365ms
Mobile signal strength
Aug 21 2018
18:28:41 - 00:48:13
+49m07s376ms to +7h08m39s741ms
active duration: 6h 19m 32s 365ms
1 occurences
Mobile signal strength | Number of times | Total duration
moderate | 1 | 6h 19m 32s 365ms
2.3. 待机模块下JobScheduler 唤醒时段
2.3.1 com.android.bankabc 农行掌上银行
19:56:51 - 20:01:06 唤醒达到 50次,唤醒过度异常
JobScheduler
Aug 21 2018
19:56:51 - 20:01:06
+2h17m17s520ms to +2h21m32s482ms
active duration: 6s 609ms
50 occurences
JobScheduler | Number of times | Total duration | Actual event times
com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2 | 50 | 6s 609ms | [19:56:51 - 19:56:51], [19:56:56 - 19:56:56], [19:57:01 - 19:57:01], [19:57:06 - 19:57:06], [19:57:11 - 19:57:11], [19:57:17 - 19:57:17], [19:57:21 - 19:57:22], [19:57:27 - 19:57:27], [19:57:33 - 19:57:33], [19:57:37 - 19:57:38], [19:57:43 - 19:57:43], [19:57:48 - 19:57:48], [19:57:53 - 19:57:53], [19:57:58 - 19:57:59], [19:58:03 - 19:58:04], [19:58:08 - 19:58:09], [19:58:14 - 19:58:14], [19:58:19 - 19:58:20], [19:58:24 - 19:58:25], [19:58:30 - 19:58:30], [19:58:35 - 19:58:35], [19:58:41 - 19:58:41], [19:58:46 - 19:58:46], [19:58:50 - 19:58:51], [19:58:56 - 19:58:56], [19:59:01 - 19:59:01], [19:59:06 - 19:59:06], [19:59:11 - 19:59:11], [19:59:17 - 19:59:17], [19:59:23 - 19:59:23], [19:59:27 - 19:59:28], [19:59:32 - 19:59:33], [19:59:37 - 19:59:38], [19:59:43 - 19:59:43], [19:59:48 - 19:59:48], [19:59:53 - 19:59:53], [19:59:58 - 19:59:59], [20:00:03 - 20:00:04], [20:00:08 - 20:00:09], [20:00:13 - 20:00:14], [20:00:18 - 20:00:19], [20:00:24 - 20:00:24], [20:00:29 - 20:00:29], [20:00:34 - 20:00:34], [20:00:39 - 20:00:39], [20:00:45 - 20:00:45], [20:00:50 - 20:00:51], [20:00:55 - 20:00:56], [20:01:01 - 20:01:01], [20:01:05 - 20:01:06]
对比其他的唤醒源,就 com.android.bankabc 后台大量唤醒
JobScheduler Jobs:
Show entriesSearch:
Ranking Name Uid Duration / Hr Count / Hr Total Duration Total Count
0 com.android.bankabc : com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2 10078 561ms 69.38 9.631s 1191
1 com.snda.wifilocating : com.snda.wifilocating/com.*.daemon.JobSchedulerService 10119 164ms 0.70 2.828s 12
2 com.tencent.reading : com.tencent.reading/com.tencent.news.push.pullwake.jobsched.JobService 10135 83ms 0.76 1.436s 13
3 com.meelive.ingkee : com.meelive.ingkee/.business.room.socketio.connection.internal.KAJobService 10103 67ms 0.52 1.151s 9
4 com.sankuai.meituan : com.sankuai.meituan/com.dianping.base.push.pushservice.PushWakeUpJob 10115 64ms 0.35 1.108s 6
2.3.1 com.android.bankabc 具体唤醒数据
Application com.android.bankabc
Version Name 3.7.3
Version Code 23
UID 10078
CPU user time 1s 920ms
CPU system time 1s 225ms
Device estimated power use due to CPU usage 0.00%
Wakelocks:
Show entriesSearch:
Wakelock Name Full Time Full Count Minimum total partial Time Partial Count Window Time Window Count
*job*/com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2 0 2s 897ms 951 0
Showing 1 to 1 of 1 entriesPrevious1Next
Process info:
Show entriesSearch:
Process Name User Time System Time Foreground Time # Starts # ANRs # Crashes
com.android.bankabc:CMCoreService 1s 930ms 1s 230ms 0 0 0
Showing 1 to 1 of 1 entriesPrevious1Next
Scheduled Job:
Show entriesSearch:
Job Name Total Time Count
com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2 9s 631ms 1191
Showing 1 to 1 of 1 entries
3. 解决思路
- 重新进行测试,放置到信号位置OK的地方
- 暗屏过程中,尤其是dile模式下,禁止 com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2 唤醒,或进行唤醒次数控制
08-22 09:20:03.514836 1040 1040 D PowerManagerNotifier: onWakeLockAcquired: flags=1, tag="*job*/com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2", packageName=android, ownerUid=1000, ownerPid=1040, workSource=WorkSource{10078}
08-22 09:20:03.516849 1040 1040 D PowerManagerNotifier: onWakeLockReleased: flags=1, tag="*job*/com.android.bankabc/com.feinno.teatalkavsdk.service.Keep2", packageName=android, ownerUid=1000, ownerPid=1040, workSource=WorkSource{10078}