From 28f7ecf5333cfef1849d88583c031b3ce6ff1e57 Mon Sep 17 00:00:00 2001 From: Jonathan Nguyen Date: Thu, 7 May 2020 18:39:05 -0700 Subject: [PATCH] Add app usage logging for statsd Test: manually tested on local flame Bug: 156041159 Change-Id: I0513be4524b3ceb1c4840bf7f83048f7c1f55019 --- .../android/server/usage/UsageStatsService.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index 5b5d57bf2f51c..1d8dbe4bc16f9 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -88,6 +88,7 @@ import com.android.internal.content.PackageMonitor; import com.android.internal.os.BackgroundThread; import com.android.internal.util.CollectionUtils; import com.android.internal.util.DumpUtils; +import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.IndentingPrintWriter; import com.android.server.LocalServices; import com.android.server.SystemService; @@ -810,6 +811,13 @@ public class UsageStatsService extends SystemService implements } catch (IllegalArgumentException iae) { Slog.e(TAG, "Failed to note usage start", iae); } + FrameworkStatsLog.write( + FrameworkStatsLog.APP_USAGE_EVENT_OCCURRED, + mPackageManagerInternal.getPackageUid(event.mPackage, 0, userId), + event.mPackage, + event.mClass, + FrameworkStatsLog + .APP_USAGE_EVENT_OCCURRED__EVENT_TYPE__MOVE_TO_FOREGROUND); break; case Event.ACTIVITY_PAUSED: if (event.mTaskRootPackage == null) { @@ -824,6 +832,13 @@ public class UsageStatsService extends SystemService implements event.mTaskRootClass = prevData.mTaskRootClass; } } + FrameworkStatsLog.write( + FrameworkStatsLog.APP_USAGE_EVENT_OCCURRED, + mPackageManagerInternal.getPackageUid(event.mPackage, 0, userId), + event.mPackage, + event.mClass, + FrameworkStatsLog + .APP_USAGE_EVENT_OCCURRED__EVENT_TYPE__MOVE_TO_BACKGROUND); break; case Event.ACTIVITY_DESTROYED: // Treat activity destroys like activity stops.