Atom: WifiMulticastLockStateChanged
Add WifiMulticastLockStateChanged to atoms.proto
Add log lines
Test: CTS test in accompanying CL
Change-Id: I9b4b861a2de5254c9b7f41c15ab0fbb76af4ff6e
diff --git a/cmds/statsd/src/atoms.proto b/cmds/statsd/src/atoms.proto
index 7a9588d..7f0ebb4 100644
--- a/cmds/statsd/src/atoms.proto
+++ b/cmds/statsd/src/atoms.proto
@@ -86,6 +86,7 @@
AppStartFullyDrawnChanged app_start_fully_drawn_changed = 50;
LmkEventOccurred lmk_event_occurred = 51;
PictureInPictureStateChanged picture_in_picture_state_changed = 52;
+ WifiMulticastLockStateChanged wifi_multicast_lock_state_changed = 53;
// TODO: Reorder the numbering so that the most frequent occur events occur in the first 15.
}
@@ -707,6 +708,22 @@
}
/**
+ * Logs wifi multicast locks held by an app
+ *
+ * Logged from:
+ * frameworks/base/core/java/com/android/internal/os/BatteryStatsImpl.java
+ */
+message WifiMulticastLockStateChanged {
+ repeated AttributionNode attribution_node = 1;
+
+ enum State {
+ OFF = 0;
+ ON = 1;
+ }
+ optional State state = 2;
+}
+
+/**
* Logs phone signal strength changes.
*
* Logged from:
@@ -1322,4 +1339,4 @@
// for external input).
// It is not affected by clock scaling, idle, or other power saving mechanisms.
optional uint64 uptime_ms = 1;
-}
\ No newline at end of file
+}
diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java
index b1c45f7..039b66d 100644
--- a/core/java/com/android/internal/os/BatteryStatsImpl.java
+++ b/core/java/com/android/internal/os/BatteryStatsImpl.java
@@ -6947,6 +6947,8 @@
WIFI_MULTICAST_ENABLED, mBsi.mWifiMulticastTimers, mBsi.mOnBatteryTimeBase);
}
mWifiMulticastTimer.startRunningLocked(elapsedRealtimeMs);
+ StatsLog.write_non_chained(
+ StatsLog.WIFI_MULTICAST_LOCK_STATE_CHANGED, getUid(), null, 1);
}
}
@@ -6955,6 +6957,8 @@
if (mWifiMulticastEnabled) {
mWifiMulticastEnabled = false;
mWifiMulticastTimer.stopRunningLocked(elapsedRealtimeMs);
+ StatsLog.write_non_chained(
+ StatsLog.WIFI_MULTICAST_LOCK_STATE_CHANGED, getUid(), null, 0);
}
}