From feb011791578ebc431c1b3d2abaa2464778f0f98 Mon Sep 17 00:00:00 2001 From: yueg Date: Wed, 21 Jun 2017 15:36:07 -0700 Subject: Log starting tab. Log which tab is presented when app first launched, including: - speed dial - call log - contacts - voicemail (if not available, we move to contacts tab immediately and log the move) Test: manual PiperOrigin-RevId: 159754375 Change-Id: Ice5be6c0f2c0463204fe3c1c7cf83c4dfc7df5d1 --- java/com/android/dialer/app/DialtactsActivity.java | 3 +++ java/com/android/dialer/callintent/CallIntentBuilder.java | 1 + .../android/dialer/callintent/call_specific_app_data.proto | 4 +++- .../android/dialer/performancereport/PerformanceReport.java | 11 ++++++++--- 4 files changed, 15 insertions(+), 4 deletions(-) (limited to 'java/com') diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java index e093aa9b7..1c9718e40 100644 --- a/java/com/android/dialer/app/DialtactsActivity.java +++ b/java/com/android/dialer/app/DialtactsActivity.java @@ -1077,6 +1077,9 @@ public class DialtactsActivity extends TransactionSafeActivity // but it is quickly removed and shown the contacts tab. if (mListsFragment != null) { mListsFragment.showTab(tabIndex); + PerformanceReport.setStartingTabIndex(tabIndex); + } else { + PerformanceReport.setStartingTabIndex(DialtactsPagerAdapter.TAB_INDEX_SPEED_DIAL); } } } diff --git a/java/com/android/dialer/callintent/CallIntentBuilder.java b/java/com/android/dialer/callintent/CallIntentBuilder.java index c9468baa6..e5a0be848 100644 --- a/java/com/android/dialer/callintent/CallIntentBuilder.java +++ b/java/com/android/dialer/callintent/CallIntentBuilder.java @@ -51,6 +51,7 @@ public class CallIntentBuilder { .setTimeSinceFirstClick(PerformanceReport.getTimeSinceFirstClick()) .addAllUiActionsSinceAppLaunch(PerformanceReport.getActions()) .addAllUiActionTimestampsSinceAppLaunch(PerformanceReport.getActionTimestamps()) + .setStartingTabIndex(PerformanceReport.getStartingTabIndex()) .build(); PerformanceReport.stopRecording(); } else { diff --git a/java/com/android/dialer/callintent/call_specific_app_data.proto b/java/com/android/dialer/callintent/call_specific_app_data.proto index 1d024d3a3..5d23794d5 100644 --- a/java/com/android/dialer/callintent/call_specific_app_data.proto +++ b/java/com/android/dialer/callintent/call_specific_app_data.proto @@ -14,7 +14,7 @@ import "java/com/android/dialer/logging/ui_action.proto"; // Miscellaneous data that's included in a new outgoing call initiated by // Dialer. The system will pass this data to the InCallUi which can use it // for logging or for something else. -// Next tag: 10 +// Next tag: 11 message CallSpecificAppData { optional CallInitiationType.Type call_initiation_type = 1; @@ -32,4 +32,6 @@ message CallSpecificAppData { repeated com.android.dialer.logging.UiAction.Type ui_actions_since_app_launch = 8; repeated int64 ui_action_timestamps_since_app_launch = 9; + + optional int32 starting_tab_index = 10; } diff --git a/java/com/android/dialer/performancereport/PerformanceReport.java b/java/com/android/dialer/performancereport/PerformanceReport.java index 27fd7485b..4359c0139 100644 --- a/java/com/android/dialer/performancereport/PerformanceReport.java +++ b/java/com/android/dialer/performancereport/PerformanceReport.java @@ -53,6 +53,8 @@ public final class PerformanceReport { @Nullable private static UiAction.Type ignoreActionOnce = null; + private static int startingTabIndex = -1; // UNKNOWN + private PerformanceReport() {} public static void startRecording() { @@ -140,9 +142,12 @@ public final class PerformanceReport { return actionTimestamps; } - @Nullable - public static UiAction.Type getIgnoreActionOnce() { - return ignoreActionOnce; + public static int getStartingTabIndex() { + return startingTabIndex; + } + + public static void setStartingTabIndex(int startingTabIndex) { + PerformanceReport.startingTabIndex = startingTabIndex; } public static void setIgnoreActionOnce(@Nullable UiAction.Type ignoreActionOnce) { -- cgit v1.2.3