天天看點

20180828 com.tencent.mtt 待機功耗現象

1. BugRepot 現象

17:01:21 - 11:01:49 18h 0m 28s 601ms,耗電量(94%-81% = 13%)

20180828 com.tencent.mtt 待機功耗現象

2. 功耗現象分析

2.1 待機測試中 com.tencent.mtt 一直處于前台程序

20180828 com.tencent.mtt 待機功耗現象
Top app
Aug  
:: - ::
+h25m58s859ms to +h26m59s438ms
active duration: m s ms
 occurences

Top app         | Number of times | Total duration
com.tencent.mtt |                | m s ms   
           

com.tencent.mtt.account.sync/com.tencent.mtt/QQ浏覽器,處于Top程序,暗屏待機下,通過

JobScheduler 和 SyncManager 進行喚醒CPU,由于網際網路特性,QQ浏覽器需要排程網絡,導緻功耗一直無法減低下來。

Application com.tencent.mtt
Version Name    
Version Code    
UID 
Device estimated power use  %
Foreground   times over m s ms
Vibrator use     times over s ms
CPU user time   s ms
CPU system time s ms
Device estimated power use due to CPU usage %
Total number of wakeup alarms   
 Network Information:
Search:
Mobile data transferred  bytes total ( bytes received,  bytes transmitted)
Mobile data transferred in the background    bytes total ( bytes received,  bytes transmitted)
Wifi data transferred    MB total ( MB received,  KB transmitted)
Wifi data transferred in the background  bytes total ( bytes received,  bytes transmitted)
Mobile packets transferred   total ( received,  transmitted)
Mobile packets transferred in the background    NaN total (undefined received, undefined transmitted)
Wifi packets transferred     total ( received,  transmitted)
Wifi packets transferred in the background  NaN total (undefined received, undefined transmitted)
Mobile active time  
Mobile active count 
Full wifi lock time 
Wifi scan count 
Wifi scan time  s ms
Wifi idle time  
Wifi transfer time  ms total ( receiving, transmitting)
Wifi idle time  s
Wifi transfer time  ms total (ms receiving, ms transmitting)
 Syncs:
Show  entriesSearch:
Sync Name   Total Time  Count
com.tencent.mtt.account.sync/com.tencent.mtt.account.sync/QQ浏覽器 s ms    
Showing  to  of  entriesPrevious1Next
 Wakelocks:
Show  entriesSearch:
Wakelock Name   Full Time   Full Count  Minimum total partial Time  Partial Count   Window Time Window Count
*vibrator*         s ms           
*alarm*        ms         
*sync*/com.tencent.mtt.account.sync/com.tencent.mtt.account.sync/XXX           ms         
*job*/com.tencent.mtt/.browser.push.external.account.JobschedulService         ms          
LocationManagerService                    
Showing  to  of  entriesPrevious12Next
 Services:
Show  entriesSearch:
Service Name    Time spent started  # starts    # launches
com.tencent.mtt.browser.push.service.PushRemoteService  h m s ms       
com.tencent.mtt.browser.push.service.PushRemoteService$InnerService    ms       
com.tencent.mtt.browser.push.external.account.JobschedulService        
com.tencent.mtt.browser.push.external.account.SyncService          
com.tencent.mtt.BrowserService         
Showing  to  of  entriesPrevious1Next
 Process info:
Show  entriesSearch:
Process Name    User Time   System Time Foreground Time # Starts    # ANRs  # Crashes
com.tencent.mtt s ms   s ms    s ms         
com.tencent.mtt:service s ms    s ms              
sh  ms    ms             
Showing  to  of  entriesPrevious1Next
 Scheduled Job:
Show  entriesSearch:
Job Name    Total Time  Count
com.tencent.mtt/.browser.push.external.account.JobschedulService    s ms    
Showing  to  of  entries
           

3. 功耗現象解決

  1. 根據測試用例進行測試,待機下統一回到桌面進行待機,這樣背景管理就可以有效的管住功耗
  2. 待機工程中,尤其是長時間的待機下對JobScheduler 和 SyncManager進行嚴格管理
com.tencent.mtt.browser.push.external.account.JobschedulService
com.tencent.mtt.browser.push.external.account.SyncService
           
  1. 延長深度Doze的持續時間,該模式下BugReport中幾乎無應用層喚醒