From 247c434e66347f90ee5a12d8f3044077e8cd32df Mon Sep 17 00:00:00 2001 From: Suprabh Shukla Date: Thu, 4 May 2023 16:54:52 -0700 Subject: [PATCH] Count app restriction events Log a counter every time an app is put under battery restriction. Test: N/A Bug: 280192659 Change-Id: I688f6e33fe74d637a453c5d5ecfbcf0d6c7f9379 --- .../java/com/android/server/AppStateTrackerImpl.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java b/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java index ce381b6699ea7..e08200b055d86 100644 --- a/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java +++ b/apex/jobscheduler/service/java/com/android/server/AppStateTrackerImpl.java @@ -22,7 +22,6 @@ import android.app.ActivityManagerInternal.AppBackgroundRestrictionListener; import android.app.AppOpsManager; import android.app.AppOpsManager.PackageOps; import android.app.IActivityManager; -import android.app.UidObserver; import android.app.usage.UsageStatsManager; import android.content.BroadcastReceiver; import android.content.Context; @@ -54,6 +53,7 @@ import com.android.internal.app.IAppOpsCallback; import com.android.internal.app.IAppOpsService; import com.android.internal.util.ArrayUtils; import com.android.internal.util.StatLogger; +import com.android.modules.expresslog.Counter; import com.android.server.AppStateTrackerProto.ExemptedPackage; import com.android.server.AppStateTrackerProto.RunAnyInBackgroundRestrictedPackages; import com.android.server.usage.AppStandbyInternal; @@ -79,6 +79,9 @@ import java.util.Set; public class AppStateTrackerImpl implements AppStateTracker { private static final boolean DEBUG = false; + private static final String APP_RESTRICTION_COUNTER_METRIC_ID = + "battery.value_app_background_restricted"; + private final Object mLock = new Object(); private final Context mContext; @@ -748,6 +751,9 @@ public class AppStateTrackerImpl implements AppStateTracker { } catch (RemoteException e) { // Shouldn't happen } + if (restricted) { + Counter.logIncrementWithUid(APP_RESTRICTION_COUNTER_METRIC_ID, uid); + } synchronized (mLock) { if (updateForcedAppStandbyUidPackageLocked(uid, packageName, restricted)) { mHandler.notifyRunAnyAppOpsChanged(uid, packageName);