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
This commit is contained in:
@@ -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();
|
||||
}
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user