summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/logging
diff options
context:
space:
mode:
authorHyunyoung Song <hyunyoungs@google.com>2018-05-15 21:46:51 -0700
committerHyunyoung Song <hyunyoungs@google.com>2018-05-16 11:26:35 -0700
commit1241e61a4568bfda63c731fba78286898eaba008 (patch)
tree6b5d426cb6f1a9ccdb40197e7ad8f839d8ee1def /src/com/android/launcher3/logging
parentd9a1337b40fcb1041bba48cd59d7f358f5b7895f (diff)
downloadpackages_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.java3
-rw-r--r--src/com/android/launcher3/logging/UserEventDispatcher.java16
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);
}