Add more log entries in loggingBinding.
Test: Run in dialer lab
PiperOrigin-RevId: 174075702
Change-Id: Ib663dc34d2c0c9e737c6d5f13b16d2b42b714127
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java
index 1dd8524..5af9b95 100644
--- a/java/com/android/dialer/app/DialtactsActivity.java
+++ b/java/com/android/dialer/app/DialtactsActivity.java
@@ -111,6 +111,8 @@
import com.android.dialer.interactions.PhoneNumberInteraction.InteractionErrorCode;
import com.android.dialer.logging.DialerImpression;
import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.LoggingBindings;
+import com.android.dialer.logging.LoggingBindingsFactory;
import com.android.dialer.logging.ScreenEvent;
import com.android.dialer.logging.UiAction;
import com.android.dialer.main.Main;
@@ -589,6 +591,16 @@
LogUtil.i("DialtactsActivity.onResume", "clearing all new voicemails");
CallLogNotificationsService.markAllNewVoicemailsAsOld(this);
}
+ // add 1 sec delay to get memory snapshot so that dialer wont react slowly on resume.
+ ThreadUtil.postDelayedOnUiThread(
+ () -> {
+ if (getApplicationContext() instanceof LoggingBindingsFactory) {
+ ((LoggingBindingsFactory) getApplicationContext())
+ .newLoggingBindings()
+ .logRecordMemory(LoggingBindings.ACTIVITY_ON_RESUME_MEMORY_EVENT_NAME);
+ }
+ },
+ 1000);
}
mFirstLaunch = false;
diff --git a/java/com/android/dialer/logging/LoggingBindings.java b/java/com/android/dialer/logging/LoggingBindings.java
index e4de420..b70c600 100644
--- a/java/com/android/dialer/logging/LoggingBindings.java
+++ b/java/com/android/dialer/logging/LoggingBindings.java
@@ -26,6 +26,8 @@
"CallList.onCallAdded_To_InCallActivity.onCreate_Incoming";
String ON_CALL_ADDED_TO_ON_INCALL_UI_SHOWN_OUTGOING =
"CallList.onCallAdded_To_InCallActivity.onCreate_Outgoing";
+ String ACTIVITY_ON_RESUME_MEMORY_EVENT_NAME = "GoogleDialtactsActivity.onResume";
+ String INCALL_ACTIVITY_ON_RESUME_MEMORY_EVENT_NAME = "IncallActivity.OnResume";
/**
* Logs an DialerImpression event that's not associated with a specific call.
*
@@ -99,4 +101,7 @@
/** Log end a latency timer */
void logStopLatencyTimer(String timerEventName);
+
+ /** Log get a memory snapshot */
+ void logRecordMemory(String memoryEventName);
}
diff --git a/java/com/android/dialer/logging/LoggingBindingsStub.java b/java/com/android/dialer/logging/LoggingBindingsStub.java
index ab6872c..74ac294 100644
--- a/java/com/android/dialer/logging/LoggingBindingsStub.java
+++ b/java/com/android/dialer/logging/LoggingBindingsStub.java
@@ -67,4 +67,7 @@
@Override
public void logStopLatencyTimer(String timerEventName) {}
+
+ @Override
+ public void logRecordMemory(String memoryEventName) {}
}
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java
index c509e48..34ffdf5 100644
--- a/java/com/android/incallui/InCallActivity.java
+++ b/java/com/android/incallui/InCallActivity.java
@@ -36,6 +36,7 @@
import android.view.View;
import com.android.dialer.common.Assert;
import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
import com.android.dialer.compat.ActivityCompat;
import com.android.dialer.configprovider.ConfigProviderBindings;
import com.android.dialer.logging.DialerImpression;
@@ -196,6 +197,16 @@
pseudoScreenState.addListener(this);
onPseudoScreenStateChanged(pseudoScreenState.isOn());
Trace.endSection();
+ // add 1 sec delay to get memory snapshot so that dialer wont react slowly on resume.
+ ThreadUtil.postDelayedOnUiThread(
+ () -> {
+ if (getApplicationContext() instanceof LoggingBindingsFactory) {
+ ((LoggingBindingsFactory) getApplicationContext())
+ .newLoggingBindings()
+ .logRecordMemory(LoggingBindings.INCALL_ACTIVITY_ON_RESUME_MEMORY_EVENT_NAME);
+ }
+ },
+ 1000);
}
/** onPause is guaranteed to be called when the InCallActivity goes in the background. */