Merge "Add New UiEvents for media dashboard" into tm-qpr-dev

This commit is contained in:
Michael Mikhail
2022-12-07 18:38:05 +00:00
committed by Android (Google) Code Review
2 changed files with 39 additions and 1 deletions

View File

@@ -422,6 +422,7 @@ class MediaDataManager(
appUid = appUid
)
mediaEntries.put(packageName, resumeData)
logSingleVsMultipleMediaAdded(appUid, packageName, instanceId)
logger.logResumeMediaAdded(appUid, packageName, instanceId)
}
backgroundExecutor.execute {
@@ -812,6 +813,7 @@ class MediaDataManager(
val appUid = appInfo?.uid ?: Process.INVALID_UID
if (logEvent) {
logSingleVsMultipleMediaAdded(appUid, sbn.packageName, instanceId)
logger.logActiveMediaAdded(appUid, sbn.packageName, instanceId, playbackLocation)
} else if (playbackLocation != currentEntry?.playbackLocation) {
logger.logPlaybackLocationChange(appUid, sbn.packageName, instanceId, playbackLocation)
@@ -855,6 +857,20 @@ class MediaDataManager(
}
}
private fun logSingleVsMultipleMediaAdded(
appUid: Int,
packageName: String,
instanceId: InstanceId
) {
if (mediaEntries.size == 1) {
logger.logSingleMediaPlayerInCarousel(appUid, packageName, instanceId)
} else if (mediaEntries.size == 2) {
// Since this method is only called when there is a new media session added.
// logging needed once there is more than one media session in carousel.
logger.logMultipleMediaPlayersInCarousel(appUid, packageName, instanceId)
}
}
private fun getAppInfoFromPackage(packageName: String): ApplicationInfo? {
try {
return context.packageManager.getApplicationInfo(packageName, 0)

View File

@@ -213,6 +213,24 @@ class MediaUiEventLogger @Inject constructor(private val logger: UiEventLogger)
instanceId
)
}
fun logSingleMediaPlayerInCarousel(uid: Int, packageName: String, instanceId: InstanceId) {
logger.logWithInstanceId(
MediaUiEvent.MEDIA_CAROUSEL_SINGLE_PLAYER,
uid,
packageName,
instanceId
)
}
fun logMultipleMediaPlayersInCarousel(uid: Int, packageName: String, instanceId: InstanceId) {
logger.logWithInstanceId(
MediaUiEvent.MEDIA_CAROUSEL_MULTIPLE_PLAYERS,
uid,
packageName,
instanceId
)
}
}
enum class MediaUiEvent(val metricId: Int) : UiEventLogger.UiEventEnum {
@@ -269,7 +287,11 @@ enum class MediaUiEvent(val metricId: Int) : UiEventLogger.UiEventEnum {
@UiEvent(doc = "User tapped on a media recommendation card")
MEDIA_RECOMMENDATION_CARD_TAP(1045),
@UiEvent(doc = "User opened the broadcast dialog from a media control")
MEDIA_OPEN_BROADCAST_DIALOG(1079);
MEDIA_OPEN_BROADCAST_DIALOG(1079),
@UiEvent(doc = "The media carousel contains one media player card")
MEDIA_CAROUSEL_SINGLE_PLAYER(1244),
@UiEvent(doc = "The media carousel contains multiple media player cards")
MEDIA_CAROUSEL_MULTIPLE_PLAYERS(1245);
override fun getId() = metricId
}