Commit Graph

58 Commits

Author SHA1 Message Date
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
Hyunyoung Song
7a77f1e678 Fix predictiveApps
Bug: 67010327

Change-Id: Iab6ea790e99bb66bd0d7d4f07a8ad9fa05387d13
2017-09-29 13:41:43 -07:00
Sunny Goyal
1d7f45d8f8 Fixing various tests
> Migrating UI tests to AndroidJUnit4 for better support
> Removing obsolete RotationPreference test
> Fixing broken FileLogTest and AndroidJUnit4
> Removing InvariantDeviceProfileTest as it does not work well with
  resource overlays

Change-Id: I0abb1df6765d76d86c1c6c84e8ac35eb9a6bcdaa
2017-07-31 11:03:54 -07:00
TreeHugger Robot
70999fef4b Merge "Adding support for derivative apps to safely extend LauncherLog proto" into ub-launcher3-dorval-polish2 2017-07-20 19:21:55 +00:00
Sunny Goyal
2385ebebee Adding support for derivative apps to safely extend LauncherLog proto
Bug: 37676962
Change-Id: I24716070841b41418ac57b8dc367278e3ebdd046
2017-07-20 11:47:11 -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
3f5a11f3a5 Add user event logging for page rearrangement and LEFT/RIGHT swipes
1. Call logOverviewRearrange logging call ONLY when the order actually changed
2. Call logActionOnContainer when containers are swiped.
Bug: 32457561
Bug: 32457561

06-30 11:23:04.082  6585  6585 D UserEvent: action:SWIPE direction=LEFT
06-30 11:23:04.082  6585  6585 D UserEvent:  Source child:WORKSPACE id=2
06-30 11:23:04.082  6585  6585 D UserEvent:  Elapsed container 50436 ms session 50436 ms action 0 ms
06-30 11:23:04.082  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:04.082  6585  6585 D UserEvent:  isInMultiWindowMode false

06-30 11:23:08.266  6585  6585 D UserEvent: action:SWIPE direction=LEFT
06-30 11:23:08.266  6585  6585 D UserEvent:  Source child:WORKSPACE id=1
06-30 11:23:08.266  6585  6585 D UserEvent:  Elapsed container 54620 ms session 54620 ms action 0 ms
06-30 11:23:08.266  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:08.266  6585  6585 D UserEvent:  isInMultiWindowMode false

06-30 11:23:10.742  6585  6585 D UserEvent: action:SWIPE direction=LEFT
06-30 11:23:10.742  6585  6585 D UserEvent:  Source child:WORKSPACE id=0
06-30 11:23:10.742  6585  6585 D UserEvent:  Elapsed container 57096 ms session 57096 ms action 0 ms
06-30 11:23:10.742  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:10.742  6585  6585 D UserEvent:  isInMultiWindowMode false

06-30 11:23:17.286  6585  6585 D UserEvent: action:SWIPE direction=RIGHT
06-30 11:23:17.286  6585  6585 D UserEvent:  Source child:WORKSPACE id=-1
06-30 11:23:17.286  6585  6585 D UserEvent:  Elapsed container 63639 ms session 63639 ms action 0 ms
06-30 11:23:17.286  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:17.286  6585  6585 D UserEvent:  isInMultiWindowMode false
06-30 11:23:19.879  6585  6585 D UserEvent: action:SWIPE direction=RIGHT
06-30 11:23:19.879  6585  6585 D UserEvent:  Source child:WORKSPACE id=0
06-30 11:23:19.879  6585  6585 D UserEvent:  Elapsed container 66233 ms session 66233 ms action 0 ms
06-30 11:23:19.879  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:19.879  6585  6585 D UserEvent:  isInMultiWindowMode false

06-30 11:23:23.811  6585  6585 D UserEvent: action:SWIPE direction=RIGHT
06-30 11:23:23.811  6585  6585 D UserEvent:  Source child:WORKSPACE id=1
06-30 11:23:23.811  6585  6585 D UserEvent:  Elapsed container 70165 ms session 70165 ms action 0 ms
06-30 11:23:23.811  6585  6585 D UserEvent:  isInLandscapeMode false
06-30 11:23:23.811  6585  6585 D UserEvent:  isInMultiWindowMode false


Change-Id: I11a48ee44aaa87863e76ccf2b46f499c28e96748
2017-06-30 13:59:38 -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
Hyunyoung Song
03a222ee86 Merge "make sure all type of Item in DumpTarget contains component and package name b/36904684" into ub-launcher3-dorval
am: 2a120d448e

Change-Id: I55c5f8dc728962f8b37a00892d871eeddf038632
2017-04-25 23:59:24 +00:00
Hyunyoung Song
52a77044cf make sure all type of Item in DumpTarget contains component and package name
b/36904684

Change-Id: I3c71726a376fd1923e193cafe3b5a9b85a48c895
2017-04-24 13:01:47 -07:00
Hyunyoung Song
e295acaeb3 Launcher dump proto that will be used for:
$ adb shell dumpsys activity provider com.android.launcher3/com.android.launcher3.LauncherProvider
To see how the proto is filled: go/launcher-proto-dump

b/31772480

Change-Id: I8e0f1e5e38148a3dfeabd2fc057392193b2625dd
(cherry picked from commit 6aa3729e98)
2017-04-04 23:06:30 +00:00
Mario Bertschler
a0b4ac56c1 Merge "Minor Refactoring only: no functional change" into ub-launcher3-master 2017-03-28 19:52:48 +00:00
Mario Bertschler
c06af333cb Minor Refactoring only: no functional change
- organizing imports
- remove redundant modifiers on LauncherCallback interface
- fix typos

Change-Id: I61eb985cac7c1379b6b804a67d4f234386d3d1b4
2017-03-28 12:23:22 -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
1dd790b43d Merge "Moving Event dispatcher definition from LAuncher to BaseActivity so that it can be used in other activities as well." into ub-launcher3-dorval
am: 4ff3457e77

Change-Id: Ib6e1f0228ccf74613e26be3d2775b87ab38082d4
2017-03-03 20:15:02 +00:00
Hyunyoung Song
6aa3729e98 Launcher dump proto that will be used for:
$ adb shell dumpsys activity provider com.android.launcher3/com.android.launcher3.LauncherProvider
To see how the proto is filled: go/launcher-proto-dump

b/31772480

Change-Id: I8e0f1e5e38148a3dfeabd2fc057392193b2625dd
2017-03-01 17:21:19 -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
49f19f0af9 Adding some logging around launcher restore
> Also enabling fileLog when the device is debug build (even when
launcher is not dogfood build)

Bug: 30735662
Change-Id: Ieab2c962d57f6f7f972f8111070d4ecbef06b3e7
2017-01-09 14:27:56 -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
Tony Wickham
55c6691e3a Add logging for shortcuts opening.
- Log as long press with child type DEEPSHORTCUTS container
- Parent type can be one of WORKSPACE, HOTSEAT, FOLDER,
  ALLAPPS, PREDICTION, or SEARCHRESULT.

Bug: 30537079
Change-Id: Ie62e4889ee06c845f959ca998781787a7fdaf00e
2016-08-01 17:55:07 -07:00
Hyunyoung Song
5aa2714959 Add user event log for deep shortcuts and all apps opening interaction.
b/30114798

Change-Id: I11ad99d0bc1983294d6a5329b98917cb87250823
2016-07-21 11:48:37 -07:00
Sunny Goyal
64976d5a56 Fixing potantial context leak code path
The javadoc in createUserEventDispatcher suggested that it can be used
as a singleton. But it was being constructed as an inner class which
would cause context leak when used as singleton

Change-Id: I706018d4ab26b506ac936fe1a7304d9b530b820c
2016-06-20 14:57:54 -07:00
Sunny Goyal
e0e0e1d000 Fixing FileLogs tests
During tests, the logs directory is changed. But the active thread
was not getting stopped which was causing some logs to be written
to the old location corresponding to some previous test

Change-Id: I7b8587eae0eb68fa180e3992694cab3745922483
2016-06-07 13:54:50 -07:00
TreeHugger Robot
4dcd8ffecc Merge "Fixing a crash/ Launcher3 doesn't have predicted apps" into ub-launcher3-calgary 2016-05-11 20:18:58 +00:00
Hyunyoung Song
373f5718f6 Fixing a crash/ Launcher3 doesn't have predicted apps
Change-Id: Id405e6d077f8b4c3fb399d4a613d6013dca5cddc
2016-05-11 11:26:01 -07:00
Hyunyoung Song
da912837b3 Merge "Send predictedApps rank via user event logging" into ub-launcher3-calgary 2016-05-11 00:06:45 +00:00
Hyunyoung Song
6470cf449f Send predictedApps rank via user event logging
Change-Id: Ib492cb77bce0bc57f60bc4b1310df0810b63d0aa
2016-05-10 16:59:55 -07:00