OSDN Git Service

Add user event logging for action on search box
authorHyunyoung Song <hyunyoungs@google.com>
Wed, 28 Sep 2016 01:07:00 +0000 (18:07 -0700)
committerHyunyoung Song <hyunyoungs@google.com>
Wed, 28 Sep 2016 01:07:00 +0000 (18:07 -0700)
b/31772967

Change-Id: Ide652ddfad931e392b21f5a2bbdf9f07729d0383

protos/launcher_log.proto
src/com/android/launcher3/logging/UserEventDispatcher.java

index 3730555..448cf64 100644 (file)
@@ -62,6 +62,7 @@ enum ItemType {
   WIDGET = 3;
   FOLDER_ICON = 4;
   DEEPSHORTCUT = 5;
+  SEARCHBOX = 6;
 }
 
 // Used to define what type of container a Target would represent.
index 0356a9c..b5da049 100644 (file)
@@ -37,6 +37,9 @@ import java.util.Locale;
 
 /**
  * Manages the creation of {@link LauncherEvent}.
+ * To debug this class, execute following command before sideloading a new apk.
+ *
+ * $ adb shell setprop log.tag.UserEvent VERBOSE
  */
 public class UserEventDispatcher {
 
@@ -152,6 +155,15 @@ public class UserEventDispatcher {
         dispatchUserEvent(ev, intent);
     }
 
+    public void logActionOnItem(int action, int itemType) {
+        LauncherEvent event = LoggerUtils.initLauncherEvent(Action.TOUCH, Target.ITEM);
+        event.action.touch = action;
+        event.srcTarget[0].itemType = itemType;
+        event.elapsedContainerMillis = SystemClock.uptimeMillis() - mElapsedContainerMillis;
+        event.elapsedSessionMillis = SystemClock.uptimeMillis() - mElapsedSessionMillis;
+        dispatchUserEvent(event, null);
+    }
+
     public void logActionOnControl(int action, int controlType) {
         LauncherEvent event = LoggerUtils.initLauncherEvent(Action.TOUCH, Target.CONTROL);
         event.action.touch = action;