Commit Graph

56 Commits

Author SHA1 Message Date
Pinyao Ting
1397a42fc2 include predicted_rank in app launch logging
Test:
1. . build/envsetup.sh && tapas NexusLauncher
2. ccdebug && cclogcat
3. launch from workspace any app that is also in predicted apps
4. verify in terminal it has correct predicted_rank

Bug: 143855018
Change-Id: I07a62f07057537a6c09384cf944bbc5aa5888d22
Merged-In: I07a62f07057537a6c09384cf944bbc5aa5888d22
2019-11-13 01:15:37 +00:00
Pinyao Ting
fefe2c8374 plugin for user event logging
Bug: 140243695
Change-Id: If9c620aa10334b26ad9b489d6544201d38439fea
2019-09-19 07:53:09 -07:00
Becky Qiu
bfc2da1fd8 Log the right workspace id for -1 screen for stop and resume.
Test: manual
Bug: 137952354

Logs after this fix:
08-01 12:01:36.220 17105 17105 D UserEvent: action:STOP
08-01 12:01:36.220 17105 17105 D UserEvent:  Source child:WORKSPACE id=-1
08-01 12:01:36.220 17105 17105 D UserEvent:  Elapsed container 5511 ms, session 5511 ms, action 0 ms
08-01 12:01:36.220 17105 17105 D UserEvent:
08-01 12:01:38.042 17105 17105 D UserEvent:
08-01 12:01:38.042 17105 17105 D UserEvent: -----------------------------------------------------
08-01 12:01:38.042 17105 17105 D UserEvent: action:RESUME
08-01 12:01:38.042 17105 17105 D UserEvent:  Source child:WORKSPACE id=-1
08-01 12:01:38.042 17105 17105 D UserEvent:  Elapsed container 7334 ms, session 7334 ms, action 0 ms
08-01 12:01:38.042 17105 17105 D UserEvent:

Change-Id: Ic2d88eee3ff7a0e28d5c7e4cab8ee61952ed95ee
2019-08-01 22:55:42 +00:00
Hyunyoung Song
e299a45944 Add several missing swipe logging
Enable swipe down to open noti shade from landscape

Bug: 137137090
Bug: 137954767
Bug: 134181439

Change-Id: I47b4d17c9ae0586565fce101eb478e33ed8f7e3d
2019-07-25 13:18:48 -07:00
Hyunyoung Song
bf44bc342f Fix NPE / add downX,Y location for all swipes/ add extra debugging info
Bug: 122700646
Bug: 127840207

Change-Id: I5862c8950565df172a933114e1fb2f9c4575593e
2019-04-24 16:16:51 -07:00
Winson Chung
41d58f7100 Add launcher logging of back button
Bug: 127848641
Test: adb shell setprop log.tag.UserEvent VERBOSE, then hit back
Change-Id: I020738280d2e51a8a192e577baf48c0b092f22f6
(cherry picked from commit df7d00328c)
2019-04-03 22:41:39 +00:00
Hyunyoung Song
ebc5f82ac5 Add logging for assistant gesture
Bug: 129867977
Change-Id: I6254bf06b7352f6076af229a581d4ebdd584a4a1
2019-04-03 12:31:42 -07:00
Hyunyoung Song
fc00747909 Add StatsLog*Manager for logging.
Bug: 113043444

Verification: (19) is our event classifier number
11-05 11:24:28.188   932   994 I statsd  : { 1541445868000000000 766293363001 (19)0x10000->1[I] 0x20000->0[I] 0x30000->0[I] 0x40000->[S] 0x50000->1[I]  }

Change-Id: I75403837f9fa8e51efa012fb708bce7efc9c4488
2018-11-05 11:41:38 -08:00
Sunny Goyal
d230307a95 Migrating to android-x
Change-Id: I9a774152d13a541e8496dd84f2469bfed407f86d
2018-08-14 15:22:12 -07:00
Hyunyoung Song
956ec4b0e5 Remove device profile dependency from UserEventDispatcher
Bug: 110122682

Change-Id: I31ba61e60e31f1cc84e6d0cf115193e45d9fcfdb
2018-07-11 23:31:01 -07:00
Sunny Goyal
7f920b8d5e Cleaning up build rules to simplify customizing derivative projects
> Using {packageName} instead of hardcoding com.android.launcher3 in AndroidManifest.xml
  for strings which are dependent on packageName
> Adding proguard rule to prevent obfuscating any overridable class
> Making it easier to extend SettingsActivity by overriding the fragment class

Change-Id: I5668c3f33b4cf20ad01d7f54b3d79cc0d268d391
2018-07-02 11:16:04 -07:00
Hyunyoung Song
46d07f7cb0 Log the parent of the PREDICTION container type (ALLAPPS OR TASKSWITCHER)
Bug: 79423536

Change-Id: I23ff0d4d0aa3fec781e9b6c8792d2d7a738ca6c8
2018-05-23 11:35:02 -07:00
Hyunyoung Song
bd6fba9f58 onResume event should be logged (not twice but once)
Bug: 79541772

Change-Id: I5fe1271007e4579e1ec95d51c215ef48d0c6eedd
2018-05-21 12:27:46 -07:00
Hyunyoung Song
1241e61a45 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
2018-05-16 11:26:35 -07:00
Hyunyoung Song
018eec6899 Add logging for Onboarding
Bug: 73784423

* Discovery bounce, homescreen, hotseat
UserEvent: action:TIP
UserEvent:  Source child:HOTSEAT id=0 BOUNCE

* Discovery bounce, overview, prediction
UserEvent: action:TIP
UserEvent:  Source child:PREDICTION BOUNCE

* Swipe up from navbar text (visibility, cancel target)
UserEvent: action:TIP
UserEvent:  Source child:TIP SWIPE_UP_TEXT

UserEvent: action:TAP
UserEvent:  Source child:CANCEL_TARGET SWIPE_UP_TEXT

* Quickscrub text (visibility, cancel target)
UserEvent: action:TIP
UserEvent:  Source child:TIP QUICK_SCRUB_TEXT

UserEvent: action:TAP
UserEvent:  Source child:CANCEL_TARGET QUICK_SCRUB_TEXT

* Prediction apps text (visibility, cancel target)
UserEvent: action:TAP
UserEvent:  Source child:TIP PREDICTION_TEXT

UserEvent: action:TAP
UserEvent:  Source child:CANCEL_TARGET PREDICTION_TEXT

Change-Id: I94710b5ed3d00e3599985b154eb660af4a958288
2018-05-15 14:31:07 -07:00
Hyunyoung Song
a05860421f Log OVERVIEW_ACTIVITY via MetricsLogger in quickstep
Bug: 77920179

Change-Id: Id4c7dc3d535c7a8009d340183e640b04ab07408a
2018-05-02 14:34:23 -07:00
Tony Wickham
9bd862e588 Log dismissing or launching recent tasks
We now pass the log action (e.g. SWIPE or FLING) to the pending
animation, so that the end listener can log appropriately. This
is used when swiping down or up on a task, for example.

Bug: 73783784
Change-Id: I5c2eee24e8b23cf4af68d503d3435a6d8088dd8a
2018-04-06 15:41:39 -07:00
Mario Bertschler
d2e3c5de56 Adding WEB_APP item type for logging.
Set in LoggerUtils.newItemTarget if instant app

Bug:67049361
Change-Id: I8e99e5c60bf1a2083f898e8978d403138f803276
2018-04-03 21:18:38 +02:00
Hyunyoung Song
647d8f5bd1 Fix index out of exception inside UserEventDispatcher
Change-Id: Ie043ba8185c4dcd794067421682d8b4bb6095c9f
2018-02-22 11:31:31 -08:00
Sunny Goyal
d70e75a514 Removing launcher dependency when logging quickstep interaction
as Launcher may not be ready when the touch gesture completes.

Change-Id: Ia69eb7bfb0340f7b7ce9b6c67be8851e5429f867
2018-02-22 10:21:41 -08:00
Hyunyoung Song
b3fbc0ba8f Quick step/scrub/switch logging
- state transition happening due to Home and back is handled by
  specifying src target as 'from' container and dst target as the 'to'
  container
- Source and Destination container shows FROM and TO state for SWIPE/FLING
- event.isStateChange = true indicates that an action resulted in
  state transition
- Elapsed container millis is the screen time on the source container

Bug: 70181187

- logcat printout with setprop log.tag.UserEvent VERBOSE
1) State: WORKSPACE -> ALLAPPS
  action:FLING direction=UP
  Source child:HOTSEAT id=0	parent:WORKSPACE id=0
  Destination child:ALLAPPS
  Elapsed container 1225 ms, session 1225 ms, action 0 ms

2) ALLAPPS -> HOMESCREEN
  action:FLING direction=DOWN
  Source child:ALLAPPS	parent:ALLAPPS
  Destination child:WORKSPACE id=0
  Elapsed container 971 ms, session 2197 ms, action 0 ms

3) HOMESCREEN -> OVERVIEW
  action:FLING direction=UP
  Source child:NAVBAR	parent:WORKSPACE id=0
  Destination child:TASKSWITCHER
  Elapsed container 4834 ms, session 4834 ms, action 0 ms

4) OVERVIEW-> ALLAPPS
  action:FLING direction=UP
  Source child:TASK	parent:TASKSWITCHER
  Destination child:ALLAPPS
  Elapsed container 2176 ms, session 7010 ms, action 0 ms

5) ALLAPPS->OVERVIEW
  action:FLING direction=DOWN
  Source child:ALLAPPS	parent:ALLAPPS
  Destination child:TASKSWITCHER
  Elapsed container 3683 ms, session 10693 ms, action 0 ms

6) OVERVIEW-> HOMESCREEN
  action:FLING direction=DOWN
  Source child:TASK	parent:TASKSWITCHER
  Destination child:WORKSPACE id=0
  Elapsed container 2108 ms, session 12801 ms, action 0 ms

7) APPS-> OVERVIEW
  action:FLING direction=UP
  Source child:NAVBAR	parent:APP
  Destination child:TASKSWITCHER
  Elapsed container 104 ms, session 104 ms, action 0 ms

8) Quickscrub: action:DRAGANDDROP Source child: QUICK

9) Quickswitch: action:FLING Source child: QUICK

Change-Id: I5898230859ff600f48a2a873a40b670fe4d39a0d
2018-02-20 22:40:19 -08:00
Hyunyoung Song
7fb3ccc4a5 Log time spent on different UI surfaces
- When swipe happens on worskpace, elapsed container ms is reset
- Fling DOWN is also logged so that we now know how much time was spent on
  all apps screen
- If screen off or power button trigger onPause, log this event.

Bug: 67745115
Change-Id: Ie3a0090c78195a4a028de9935131e9e034dcf48a
2017-10-19 15:15:02 -07:00
Sunny Goyal
aeb1643ec6 Launcher state management cleanup
> Removing Widgets and related states
> Fixing different durations being used when opening/closing all-apps
> Removing some unnecessary object allocations when changing state without animation
> Differentiating widget bootm sheel and full sheet in logs

Bug: 67678570
Change-Id: Ic169528736d04ee0b38564b4f96595ba066eabda
2017-10-17 12:42:08 -07:00
Sunny Goyal
2b50b53183 Updating UserEventDispatcher to make some methods accessible.
> Removing helper methods around fillInLogContainerData so that its easier to
  create events with 3 and more srcTargets
> Removing setPredictedApps from userEventDispatcher as its specific to Launcher
  and does not apply to other activities. Instead moving it to AllAppsRecyclerView

Bug: 63719473
Change-Id: Ib92621e41ede4ffe03892642ab173772b5a84dd1
2017-07-19 11:03:35 -07:00
Hyunyoung Song
5a1ab2ef85 Salt packageNameHash with unique user identifier
Bug: 62676166

Change-Id: I10b301b50e0198aeb52c1c437b9a84aaf323ef66
2017-07-06 10:05:07 -07:00
Hyunyoung Song
ef6746bc65 Revert "Salt the package hash code using the device serial Bug: 62676166"
This reverts commit e8ca28179b.

Change-Id: I9fd51321d671d5ff90c7bfaddc05fc6ba11018e3
2017-06-29 22:09:16 +00:00
Hyunyoung Song
e8ca28179b Salt the package hash code using the device serial
Bug: 62676166

Change-Id: Id723cc3f283bc05b01185abef9084d6dbd75fbbc
2017-06-29 13:16:52 -07:00
Tony Wickham
1d0b0e25dc Log when App info or Widgets system shortcuts are tapped
Sample output:
D/UserEvent: action:LONGPRESS
              Source child:APP_ICON, grid(1,3), span(1,1), pageIdx=0	parent:WORKSPACE id=0
              Elapsed container 135 ms session 7984 ms action 0 ms
              isInLandscapeMode false
              isInMultiWindowMode false
D/UserEvent: action:TAP
              Source child:WIDGETS_BUTTON	parent:DEEPSHORTCUTS
              Elapsed container 41 ms session 8906 ms action 0 ms
              isInLandscapeMode false
              isInMultiWindowMode false
D/UserEvent: action:LONGPRESS
              Source child:APP_ICON, grid(1,3), span(1,1), pageIdx=0	parent:WORKSPACE id=0
              Elapsed container 184 ms session 11297 ms action 0 ms
              isInLandscapeMode false
              isInMultiWindowMode false
D/UserEvent: action:TAP
              Source child:APPINFO_TARGET	parent:DEEPSHORTCUTS
              Elapsed container 678 ms session 11976 ms action 0 ms
              isInLandscapeMode false
              isInMultiWindowMode false


Bug: 37430954
Change-Id: I526edbf1eea551eb8eaddbb27e52058804fee874
2017-05-25 21:37:58 +00:00
Hyunyoung Song
ec6a48ce60 Merge "Log whether an event happened during landscape mode or not b/38211234" into ub-launcher3-dorval
am: 441c628a75

Change-Id: I2101f93fc5dca6e0f216a2cc8b86b976dc052bbe
2017-05-16 18:58:07 +00:00
Hyunyoung Song
d5a9b57713 Log whether an event happened during landscape mode or not
b/38211234

<sample log>
  action:TAP
  Source child:APP_ICON, packageHash=-1046965711, componentHash=-371608779, intentHash=208792422, grid(4,4), span(1,1), pageIdx=0	parent:WORKSPACE id=0
  Elapsed container 3071 ms session 3071 ms action 0 ms
  isInLandscapeMode true
  isInMultiWindowMode false
</sample log>

Change-Id: I44dfe4e7ee2a41c56a50cc2b507bbbeedc458018
2017-05-16 11:12:43 -07:00
Jon Miranda
fcaff64c93 Resolve merge conflicts of 8eb0de133 to ub-launcher3-master
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I1e888f6941435befe6f1819de74dea985909ddf0
2017-03-28 12:14:13 -07:00
Jon Miranda
fe96432b43 Add isInMultiWindowMode bool to all logs.
Example output:
D/UserEvent: action:LONGPRESS
       Source child:WORKSPACE id=0
       Elapsed container 1850 ms session 1850 ms action 0 ms
       isInMultiWindowMode true

Bug: 34250955

Change-Id: If21484e8bbb0f4f311c2eb6e94b7dcea6d2431af
2017-03-22 13:08:50 -07:00
Sunny Goyal
3d706ad703 Separating the config and flags in different directories so that
it is easier to override one or the other

Bug: 36001650
Change-Id: I713f4f5dbcf902614ce9f6c7a73bdace7bdf1ea0
2017-03-07 09:30:51 -08:00
Sunny Goyal
a535ae423b Moving Event dispatcher definition from LAuncher to BaseActivity so that
it can be used in other activities as well.

Bug: 34766840
Change-Id: Ie4b723483792bee93fb75e63146ebea7dfeebeda
2017-02-27 10:09:09 -08:00
Jon Miranda
c6cf493b07 Add basic logs for tap outside action.
Change-Id: I6288610b9870c3abe88794c53309b1d76dd2780f
2017-02-07 17:14:28 -08:00
Tony Wickham
c6b79e307f Add logging for notifications.
- Log notification launches
- Log notification swipes
- Fix logDragNDrop() to only log if the pre-drag ends (so it doesn't
  log a long-press that only shows shortcuts without dragging).
- Add shortcut rank to logs when launching deep shortcuts, where 0
  is the shortcut closest to the app icon (highest rank).

Bug: 34770729
Bug: 32410600
Change-Id: I99dcef9b6a71da2ef58e32397702bb137407b10f
2017-02-07 10:16:52 -08:00
Hyunyoung Song
3c7d9cbb20 Clean up around 1) Log.VERBOSE and 2) dump
b/31772480

Note: in the follow up CL, I will add the dump result of the bgDataModel
to a proto

Change-Id: I5261cff0fb29cedd1dd772b8b15f67095ad5b967
2017-02-01 15:11:08 -08:00
Sunny Goyal
6c46a6d324 Using java_style enum generation for proto
This makes it easier to track various method parameters and simplifies
debug logging

Change-Id: Ib7c3d52590d0c36b2c8460c889ee3bead3454569
2016-12-15 09:30:35 -08:00
Sunny Goyal
fa94c79ca6 Consolidating a few log util methods
LoggerUtils had a lot of methods with same name and similar arguments
but completely different behavior.
Instead only defining macros in LoggerUtils and movoing the action
logic in the UserEventDispatcher.

Change-Id: Ibce8ea1a0890499b47c950930accb9b28473f44c
2016-12-15 08:19:18 -08:00
Jon Miranda
feba90fe80 Added logging for HOME_INTENT and BACK commands.
Document: go/false-longpress-overview

Change-Id: If6ba4996c861a44f4950b41acb4246e3a483d8f2
2016-11-21 17:01:24 -08:00
Hyunyoung Song
0860e41d50 Add logging for workspace rearrangement in overview mode
am: 0d4899026c

Change-Id: Ie6569ecafdd63981e167a910f852a8133697ae81
2016-11-21 19:48:08 +00:00
Hyunyoung Song
0d4899026c Add logging for workspace rearrangement in overview mode
b/32457561

Change-Id: Ic38fbd540616a74f26c19a09ab4247fe8f9174b4
2016-11-17 20:48:18 +00:00
Hyunyoung Song
df7ef68bbf Refactors in UserEventDispatcher
- LaunchSource -> LogContainer

Change-Id: I71bfee992fb1ba7ae80e824d419f7bf8d3020999
2016-10-06 17:52:22 -07:00
Hyunyoung Song
0de011705b Code sanitization
- Removed bad method/class name typos

Change-Id: Ie6900e9e3d9ce9b550d2a2442a5dac3f7050a573
2016-10-06 10:57:29 -07:00
Jon Miranda
f3e35d9331 Add logging for long presses. Reset elapsed timer when changing containers.
This is the first CL in a series of logging-related CLs. Upcoming CLs will
include using Commands (HOME_INTENT, BACK) and "tapping outside" of a container
logic.

Change-Id: I62f0a08c7a9d9fce0baa5c12c67e21f63ab16a7c
2016-10-05 15:22:23 -07:00
Hyunyoung Song
d8fcffb8fe Add user event logging for tap on search
b/31772967

Change-Id: I71ececb8195d46405623a8ae2a99d001088d9181
2016-10-03 14:01:25 -07:00
Hyunyoung Song
ffad962092 Add user event logging for action on search box
b/31772967

Change-Id: Ide652ddfad931e392b21f5a2bbdf9f07729d0383
2016-09-27 18:07:00 -07:00
Hyunyoung Song
59a238095e Support user event logging for drag and drop
b/30039490

Supported in this CL:
- DnD: drag from container [WORKSPACE|HOTSEAT|FOLDER|ALLAPPS|WIDGETS|DEEPSHORTCUTS]
       drag to container [HOTSEAT,WORKSPACE,FOLDER,DROPTARGETS]
- Source and target can be [FOLDER_ICON, ICON, DEEPSHORTCUT, WIDGET]
- $ adb shell setprop log.tag.UserEvent DEBUG will turn on debugging

Change-Id: I0b8b879b80e6dce85bbde6e7794f9e0677832603
2016-09-01 12:47:12 -07:00
Hyunyoung Song
8ce6063c4a Set launch source target correctly for user event logging
Before, everything is set to APP_ICON
With this changed, pinned shortcuts are set to DEEPSHORTCUT

Change-Id: I3e17de63f58693525236290ef5cb1f909f1d6098
2016-08-15 16:22:20 -07:00
Tony Wickham
be06874c81 Log shortcuts open on ACTION_UP instead of in showForIcon().
- We only want to log when the container is opened and potentially
  used, not when a long press is followed by a drag-and-drop.
- Also cleaned up code that was determining the container of the
  app icon, since LaunchSourceProvider.fillInLaunchSourceData()
  can do that instead (it's more robust and consistent).

Bug: 30791570
Change-Id: I05b6750f26182fda8a9940ac66f1371c2d228ca9
2016-08-10 18:26:41 -07:00