From 23c14fc01cdbe59c0021b8c130f098df6bf15b4d Mon Sep 17 00:00:00 2001 From: Adrian Roos Date: Thu, 28 Jul 2016 12:32:41 -0700 Subject: [PATCH] DozeLog: Properly initialize Adds lazy initialization to all DozeLog traces that are called externally. Also fixes a bug where certain traces initialized after logging, thus missing the first log. Change-Id: If75d6cc048f76435856f1c570b66cd6ef96e5ee2 Fixes: 30225249 --- .../SystemUI/src/com/android/systemui/doze/DozeLog.java | 8 +++++--- .../src/com/android/systemui/doze/DozeService.java | 6 +++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java b/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java index 9eb768c51851b..7c8d0f64c11ca 100644 --- a/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java +++ b/packages/SystemUI/src/com/android/systemui/doze/DozeLog.java @@ -57,8 +57,9 @@ public class DozeLog { private static SummaryStats sEmergencyCallStats; private static SummaryStats[][] sProxStats; // [reason][near/far] - public static void tracePickupPulse(boolean withinVibrationThreshold) { + public static void tracePickupPulse(Context context, boolean withinVibrationThreshold) { if (!ENABLED) return; + init(context); log("pickupPulse withinVibrationThreshold=" + withinVibrationThreshold); (withinVibrationThreshold ? sPickupPulseNearVibrationStats : sPickupPulseNotNearVibrationStats).append(); @@ -76,8 +77,9 @@ public class DozeLog { log("pulseFinish"); } - public static void traceNotificationPulse(long instance) { + public static void traceNotificationPulse(Context context, long instance) { if (!ENABLED) return; + init(context); log("notificationPulse instance=" + instance); sNotificationPulseStats.append(); } @@ -153,9 +155,9 @@ public class DozeLog { public static void traceProximityResult(Context context, boolean near, long millis, int pulseReason) { if (!ENABLED) return; + init(context); log("proximityResult reason=" + pulseReasonToString(pulseReason) + " near=" + near + " millis=" + millis); - init(context); sProxStats[pulseReason][near ? 0 : 1].append(); } diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java index 661b347608ed8..fc0d8bb376d0f 100644 --- a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java +++ b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java @@ -373,7 +373,7 @@ public class DozeService extends DreamService { if (DEBUG) Log.d(mTag, "mScheduleResetsRemaining = " + mScheduleResetsRemaining); mNotificationPulseTime = notificationTimeMs; if (pulseImmediately) { - DozeLog.traceNotificationPulse(0); + DozeLog.traceNotificationPulse(mContext, 0); requestPulse(DozeLog.PULSE_REASON_NOTIFICATION); } // schedule the rest of the pulses @@ -442,7 +442,7 @@ public class DozeService extends DreamService { if (NOTIFICATION_PULSE_ACTION.equals(intent.getAction())) { final long instance = intent.getLongExtra(EXTRA_INSTANCE, -1); if (DEBUG) Log.d(mTag, "Received notification pulse intent instance=" + instance); - DozeLog.traceNotificationPulse(instance); + DozeLog.traceNotificationPulse(mContext, instance); requestPulse(DozeLog.PULSE_REASON_NOTIFICATION); rescheduleNotificationPulse(mNotificationLightOn); } @@ -576,7 +576,7 @@ public class DozeService extends DreamService { resetNotificationResets(); } if (mSensor.getType() == Sensor.TYPE_PICK_UP_GESTURE) { - DozeLog.tracePickupPulse(withinVibrationThreshold); + DozeLog.tracePickupPulse(mContext, withinVibrationThreshold); } } finally { mWakeLock.release();