OSDN Git Service

Bugfix: wakeup alarms logging
authorTej Singh <singhtejinder@google.com>
Thu, 4 Jan 2018 04:02:03 +0000 (20:02 -0800)
committerTej Singh <singhtejinder@google.com>
Thu, 4 Jan 2018 19:09:07 +0000 (11:09 -0800)
Log wakeup alarms regardless of whether or not the device is on battery

Test: ran cts tests
Change-Id: Ib582bbb82da51f60a3bb75e940d53f0552c3ca86

core/java/com/android/internal/os/BatteryStatsImpl.java

index 1739bed..066c127 100644 (file)
@@ -4028,18 +4028,17 @@ public class BatteryStatsImpl extends BatteryStats {
 
     public void noteWakupAlarmLocked(String packageName, int uid, WorkSource workSource,
             String tag) {
-        if (!isOnBattery()) {
-            return;
-        }
 
         if (workSource != null) {
             for (int i = 0; i < workSource.size(); ++i) {
                 uid = workSource.get(i);
                 final String workSourceName = workSource.getName(i);
 
-                BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid,
-                        workSourceName != null ? workSourceName : packageName);
-                pkg.noteWakeupAlarmLocked(tag);
+                if (isOnBattery()) {
+                    BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid,
+                            workSourceName != null ? workSourceName : packageName);
+                    pkg.noteWakeupAlarmLocked(tag);
+                }
 
                 StatsLog.write(StatsLog.WAKEUP_ALARM_OCCURRED, uid, tag);
             }
@@ -4050,16 +4049,20 @@ public class BatteryStatsImpl extends BatteryStats {
                     final WorkChain wc = workChains.get(i);
                     uid = wc.getAttributionUid();
 
-                    BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid, packageName);
-                    pkg.noteWakeupAlarmLocked(tag);
+                    if (isOnBattery()) {
+                        BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid, packageName);
+                        pkg.noteWakeupAlarmLocked(tag);
+                    }
 
                     // TODO(statsd): Log the full attribution chain here once it's available
                     StatsLog.write(StatsLog.WAKEUP_ALARM_OCCURRED, uid, tag);
                 }
             }
         } else {
-            BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid, packageName);
-            pkg.noteWakeupAlarmLocked(tag);
+            if (isOnBattery()) {
+                BatteryStatsImpl.Uid.Pkg pkg = getPackageStatsLocked(uid, packageName);
+                pkg.noteWakeupAlarmLocked(tag);
+            }
             StatsLog.write(StatsLog.WAKEUP_ALARM_OCCURRED, uid, tag);
         }
     }