Log split metrics through individual sessions

* Now we log the original source of the first selected app
as soon as the user selects it (previously we only did when user
selected second app)
* We log the item info for the second app to determine second
surface.
* Added new metrics to log after user has started a split session
and ended a split session
* We log different cancellation reasons (cancel button,
home gesture, general other app interruptions, etc).
* One KI/Bug: When the second app is selected via taskbar in
overview, the container will say hotseat because we are using
Launcher's logger and not Taskbar's. Taskbar's logger manually
overwrites the container in TaskbarActivityContext, we may be
able to make something hacky that can allow us to overwrite, but
that'll have to be a separate change

Bug: 322551862
Test: Logged metrics manually with event and itemInfo
Change-Id: I177623fd00ce62acf2d4ee983b58561d8c946d59
This commit is contained in:
Vinit Nayak
2024-01-31 12:49:05 -08:00
parent 9ac91ffa63
commit 5a9d4af170
17 changed files with 182 additions and 62 deletions
@@ -199,6 +199,11 @@ public class StatsLogManager implements ResourceBasedOverride {
@UiEvent(doc = "User tapped on app info system shortcut.")
LAUNCHER_SYSTEM_SHORTCUT_APP_INFO_TAP(515),
/**
* @deprecated Use {@link #LAUNCHER_APP_ICON_MENU_SPLIT_LEFT_TOP} or
* {@link #LAUNCHER_APP_ICON_MENU_SPLIT_RIGHT_BOTTOM}
*/
@Deprecated
@UiEvent(doc = "User tapped on split screen icon on a task menu.")
LAUNCHER_SYSTEM_SHORTCUT_SPLIT_SCREEN_TAP(518),
@@ -722,6 +727,27 @@ public class StatsLogManager implements ResourceBasedOverride {
@UiEvent(doc = "User tapped on private space uninstall system shortcut.")
LAUNCHER_PRIVATE_SPACE_UNINSTALL_SYSTEM_SHORTCUT_TAP(1608),
@UiEvent(doc = "User initiated split selection")
LAUNCHER_SPLIT_SELECTION_INITIATED(1618),
@UiEvent(doc = "User finished a split selection session")
LAUNCHER_SPLIT_SELECTION_COMPLETE(1619),
@UiEvent(doc = "User selected both apps for split screen")
LAUNCHER_SPLIT_SELECTED_SECOND_APP(1609),
@UiEvent(doc = "User exited split selection by going home via swipe, button, or state "
+ "transition")
LAUNCHER_SPLIT_SELECTION_EXIT_HOME(1610),
@UiEvent(doc = "User exited split selection by tapping cancel in split instructions view")
LAUNCHER_SPLIT_SELECTION_EXIT_CANCEL_BUTTON(1611),
@UiEvent(doc = "User exited split selection when another activity/app came to foreground"
+ " after first app had been selected OR if user long-pressed on home. Default exit"
+ " metric.")
LAUNCHER_SPLIT_SELECTION_EXIT_INTERRUPTED(1612),
// ADD MORE
;