Loading cmds/statsd/src/atoms.proto +20 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,7 @@ message Atom { ShutdownSequenceReported shutdown_sequence_reported = 56; BootSequenceReported boot_sequence_reported = 57; DaveyOccurred davey_occurred = 58; OverlayStateChanged overlay_state_changed = 59; // TODO: Reorder the numbering so that the most frequent occur events occur in the first 15. } Loading Loading @@ -978,6 +979,25 @@ message PictureInPictureStateChanged { optional State state = 4; } /** * Logs overlay action * Logged from: * services/core/java/com/android/server/wm/Session.java */ message OverlayStateChanged { optional int32 uid = 1; optional string package_name = 2; optional bool using_alert_window = 3; enum State { ENTERED = 1; EXITED = 2; } optional State state = 4; } /** * Pulls bytes transferred via wifi (Sum of foreground and background usage). * Loading core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java +10 −0 Original line number Diff line number Diff line Loading @@ -96,4 +96,14 @@ public class MetricsLoggerWrapper { context.getApplicationInfo().className, StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__EXPANDED_TO_FULL_SCREEN); } public static void logAppOverlayEnter(int uid, String packageName, boolean usingAlertWindow) { StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, usingAlertWindow, StatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); } public static void logAppOverlayExit(int uid, String packageName, boolean usingAlertWindow) { StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, usingAlertWindow, StatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); } } services/core/java/com/android/server/wm/Session.java +13 −0 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import android.view.SurfaceControl; import android.view.SurfaceSession; import android.view.WindowManager; import com.android.internal.os.logging.MetricsLoggerWrapper; import com.android.internal.view.IInputContext; import com.android.internal.view.IInputMethodClient; import com.android.internal.view.IInputMethodManager; Loading Loading @@ -508,8 +509,14 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { // on-going notification for the user to control their visibility. if (visible) { changed = mAlertWindowSurfaces.add(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, true); } } else { changed = mAlertWindowSurfaces.remove(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, true); } } if (changed) { Loading @@ -530,8 +537,14 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { if (visible) { changed = mAppOverlaySurfaces.add(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, false); } } else { changed = mAppOverlaySurfaces.remove(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, false); } } if (changed) { Loading Loading
cmds/statsd/src/atoms.proto +20 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,7 @@ message Atom { ShutdownSequenceReported shutdown_sequence_reported = 56; BootSequenceReported boot_sequence_reported = 57; DaveyOccurred davey_occurred = 58; OverlayStateChanged overlay_state_changed = 59; // TODO: Reorder the numbering so that the most frequent occur events occur in the first 15. } Loading Loading @@ -978,6 +979,25 @@ message PictureInPictureStateChanged { optional State state = 4; } /** * Logs overlay action * Logged from: * services/core/java/com/android/server/wm/Session.java */ message OverlayStateChanged { optional int32 uid = 1; optional string package_name = 2; optional bool using_alert_window = 3; enum State { ENTERED = 1; EXITED = 2; } optional State state = 4; } /** * Pulls bytes transferred via wifi (Sum of foreground and background usage). * Loading
core/java/com/android/internal/os/logging/MetricsLoggerWrapper.java +10 −0 Original line number Diff line number Diff line Loading @@ -96,4 +96,14 @@ public class MetricsLoggerWrapper { context.getApplicationInfo().className, StatsLog.PICTURE_IN_PICTURE_STATE_CHANGED__STATE__EXPANDED_TO_FULL_SCREEN); } public static void logAppOverlayEnter(int uid, String packageName, boolean usingAlertWindow) { StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, usingAlertWindow, StatsLog.OVERLAY_STATE_CHANGED__STATE__ENTERED); } public static void logAppOverlayExit(int uid, String packageName, boolean usingAlertWindow) { StatsLog.write(StatsLog.OVERLAY_STATE_CHANGED, uid, packageName, usingAlertWindow, StatsLog.OVERLAY_STATE_CHANGED__STATE__EXITED); } }
services/core/java/com/android/server/wm/Session.java +13 −0 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import android.view.SurfaceControl; import android.view.SurfaceSession; import android.view.WindowManager; import com.android.internal.os.logging.MetricsLoggerWrapper; import com.android.internal.view.IInputContext; import com.android.internal.view.IInputMethodClient; import com.android.internal.view.IInputMethodManager; Loading Loading @@ -508,8 +509,14 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { // on-going notification for the user to control their visibility. if (visible) { changed = mAlertWindowSurfaces.add(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, true); } } else { changed = mAlertWindowSurfaces.remove(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, true); } } if (changed) { Loading @@ -530,8 +537,14 @@ class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { if (visible) { changed = mAppOverlaySurfaces.add(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, false); } } else { changed = mAppOverlaySurfaces.remove(surfaceController); if (changed) { MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, false); } } if (changed) { Loading