summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Evan Severson <evanseverson@google.com> 2022-02-15 08:57:45 -0800
committer Evan Severson <evanseverson@google.com> 2022-03-31 21:04:35 +0000
commitfe746b1c3935c578042cbf897f7062afc7cb26b0 (patch)
treebb408fd0ae67af252b2cf0680f8bb819d6427e6b
parentba688138fb83874114c9ea8a5737182cb1bf37ec (diff)
Add logging for package stopped event
Test: statsd_testdrive -p sysui 450 Bug: 201579707 Change-Id: I99d330a19d8dd1ec8858c7c19bfd5c28e1b3d8eb
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/FgsManagerController.kt21
1 files changed, 19 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/FgsManagerController.kt b/packages/SystemUI/src/com/android/systemui/qs/FgsManagerController.kt
index 89735c3a547d..bc3a6fe81081 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/FgsManagerController.kt
+++ b/packages/SystemUI/src/com/android/systemui/qs/FgsManagerController.kt
@@ -46,6 +46,7 @@ import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.dump.DumpManager
+import com.android.systemui.shared.system.SysUiStatsLog
import com.android.systemui.statusbar.phone.SystemUIDialog
import com.android.systemui.util.DeviceConfigProxy
import com.android.systemui.util.indentIfPossible
@@ -266,6 +267,7 @@ class FgsManagerController @Inject constructor(
runningApps[it] = RunningApp(it.userId, it.packageName,
runningServiceTokens[it]!!.startTime, it.uiControl,
ai.loadLabel(packageManager), ai.loadIcon(packageManager))
+ logEvent(stopped = false, it.packageName, it.userId, runningApps[it]!!.timeStarted)
}
removedPackages.forEach { pkg ->
@@ -284,10 +286,25 @@ class FgsManagerController @Inject constructor(
}
}
- private fun stopPackage(userId: Int, packageName: String) {
+ private fun stopPackage(userId: Int, packageName: String, timeStarted: Long) {
+ logEvent(stopped = true, packageName, userId, timeStarted)
activityManager.stopAppForUser(packageName, userId)
}
+ private fun logEvent(stopped: Boolean, packageName: String, userId: Int, timeStarted: Long) {
+ val timeLogged = systemClock.elapsedRealtime()
+ val event = if (stopped) {
+ SysUiStatsLog.TASK_MANAGER_EVENT_REPORTED__EVENT__STOPPED
+ } else {
+ SysUiStatsLog.TASK_MANAGER_EVENT_REPORTED__EVENT__VIEWED
+ }
+ backgroundExecutor.execute {
+ val uid = packageManager.getPackageUidAsUser(packageName, userId)
+ SysUiStatsLog.write(SysUiStatsLog.TASK_MANAGER_EVENT_REPORTED, uid, event,
+ timeLogged - timeStarted)
+ }
+ }
+
private inner class AppListAdapter : RecyclerView.Adapter<AppItemViewHolder>() {
private val lock = Any()
@@ -312,7 +329,7 @@ class FgsManagerController @Inject constructor(
DateUtils.LENGTH_MEDIUM)
stopButton.setOnClickListener {
stopButton.setText(R.string.fgs_manager_app_item_stop_button_stopped_label)
- stopPackage(runningApp.userId, runningApp.packageName)
+ stopPackage(runningApp.userId, runningApp.packageName, runningApp.timeStarted)
}
if (runningApp.uiControl == UIControl.HIDE_BUTTON) {
stopButton.visibility = View.INVISIBLE