diff options
author | Hyunyoung Song <hyunyoungs@google.com> | 2018-05-15 21:46:51 -0700 |
---|---|---|
committer | Hyunyoung Song <hyunyoungs@google.com> | 2018-05-16 11:26:35 -0700 |
commit | 1241e61a4568bfda63c731fba78286898eaba008 (patch) | |
tree | 6b5d426cb6f1a9ccdb40197e7ad8f839d8ee1def /src/com/android/launcher3/logging | |
parent | d9a1337b40fcb1041bba48cd59d7f358f5b7895f (diff) | |
download | packages_apps_Trebuchet-1241e61a4568bfda63c731fba78286898eaba008.tar.gz packages_apps_Trebuchet-1241e61a4568bfda63c731fba78286898eaba008.tar.bz2 packages_apps_Trebuchet-1241e61a4568bfda63c731fba78286898eaba008.zip |
Improve Task user event logging
Bug: 79539824
Bug: 79541772
(1) Added page index of the TASK that is being launched
(2) Covers all three cases of task launch (tap, swipe down, quick scrub)
UserEvent: action:FLING direction=DOWN
UserEvent: Source child:TASK, packageHash=-1598699687, componentHash=1952702153, pageIdx=0
UserEvent: action:DRAGDROP
UserEvent: Source child:TASK, packageHash=-744307622, componentHash=-515832044, pageIdx=4
(3) Avoid double logging (When onStop is called, it is not logged if
the cause of onStop is APP or TASK launch)
Change-Id: Ic5db7d6a640d43bfb5cd667b49e37dd0ed127d5c
Diffstat (limited to 'src/com/android/launcher3/logging')
-rw-r--r-- | src/com/android/launcher3/logging/LoggerUtils.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher3/logging/UserEventDispatcher.java | 16 |
2 files changed, 17 insertions, 2 deletions
diff --git a/src/com/android/launcher3/logging/LoggerUtils.java b/src/com/android/launcher3/logging/LoggerUtils.java index 442691f0d..83593aaa0 100644 --- a/src/com/android/launcher3/logging/LoggerUtils.java +++ b/src/com/android/launcher3/logging/LoggerUtils.java @@ -131,6 +131,9 @@ public class LoggerUtils { + "), pageIdx=" + t.pageIndex; } + if (t.itemType == ItemType.TASK) { + typeStr += ", pageIdx=" + t.pageIndex; + } return typeStr; } diff --git a/src/com/android/launcher3/logging/UserEventDispatcher.java b/src/com/android/launcher3/logging/UserEventDispatcher.java index 07e1315aa..850c948c2 100644 --- a/src/com/android/launcher3/logging/UserEventDispatcher.java +++ b/src/com/android/launcher3/logging/UserEventDispatcher.java @@ -132,6 +132,7 @@ public class UserEventDispatcher { private boolean mIsInLandscapeMode; private String mUuidStr; protected InstantAppResolver mInstantAppResolver; + private boolean mAppOrTaskLaunch; // APP_ICON SHORTCUT WIDGET // -------------------------------------------------------------- @@ -163,11 +164,13 @@ public class UserEventDispatcher { fillIntentInfo(event.srcTarget[0], intent); } dispatchUserEvent(event, intent); + mAppOrTaskLaunch = true; } public void logActionTip(int actionType, int viewType) { } - public void logTaskLaunchOrDismiss(int action, int direction, ComponentKey componentKey) { + public void logTaskLaunchOrDismiss(int action, int direction, int taskIndex, + ComponentKey componentKey) { LauncherEvent event = newLauncherEvent(newTouchAction(action), // TAP or SWIPE or FLING newTarget(Target.Type.ITEM)); if (action == Action.Touch.SWIPE || action == Action.Touch.FLING) { @@ -175,8 +178,10 @@ public class UserEventDispatcher { event.action.dir = direction; } event.srcTarget[0].itemType = LauncherLogProto.ItemType.TASK; + event.srcTarget[0].pageIndex = taskIndex; fillComponentInfo(event.srcTarget[0], componentKey.componentName); dispatchUserEvent(event, null); + mAppOrTaskLaunch = true; } protected void fillIntentInfo(Target target, Intent intent) { @@ -211,6 +216,11 @@ public class UserEventDispatcher { public void logActionCommand(int command, Target srcTarget, Target dstTarget) { LauncherEvent event = newLauncherEvent(newCommandAction(command), srcTarget); + if (command == Action.Command.STOP && mAppOrTaskLaunch) { + // Prevent double logging by skipping STOP when app or task has been launched. + return; + } + if (dstTarget != null) { event.destTarget = new Target[1]; event.destTarget[0] = dstTarget; @@ -405,6 +415,7 @@ public class UserEventDispatcher { } public void dispatchUserEvent(LauncherEvent ev, Intent intent) { + mAppOrTaskLaunch = false; ev.isInLandscapeMode = mIsInLandscapeMode; ev.isInMultiWindowMode = mIsInMultiWindowMode; ev.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis; @@ -413,7 +424,8 @@ public class UserEventDispatcher { if (!IS_VERBOSE) { return; } - String log = "\n\naction:" + LoggerUtils.getActionStr(ev.action); + String log = "\n-----------------------------------------------------" + + "\naction:" + LoggerUtils.getActionStr(ev.action); if (ev.srcTarget != null && ev.srcTarget.length > 0) { log += "\n Source " + getTargetsStr(ev.srcTarget); } |