diff --git a/apex/jobscheduler/framework/java/com/android/server/usage/AppStandbyInternal.java b/apex/jobscheduler/framework/java/com/android/server/usage/AppStandbyInternal.java index 2a4081ae16f82..398ccb69fbe88 100644 --- a/apex/jobscheduler/framework/java/com/android/server/usage/AppStandbyInternal.java +++ b/apex/jobscheduler/framework/java/com/android/server/usage/AppStandbyInternal.java @@ -7,7 +7,6 @@ import android.app.usage.UsageEvents; import android.app.usage.UsageStatsManager.StandbyBuckets; import android.app.usage.UsageStatsManager.SystemForcedReasons; import android.content.Context; -import android.os.Looper; import android.util.IndentingPrintWriter; import java.io.PrintWriter; @@ -21,13 +20,12 @@ public interface AppStandbyInternal { * TODO AppStandbyController should probably be a binder service, and then we shouldn't need * this method. */ - static AppStandbyInternal newAppStandbyController(ClassLoader loader, Context context, - Looper looper) { + static AppStandbyInternal newAppStandbyController(ClassLoader loader, Context context) { try { final Class clazz = Class.forName("com.android.server.usage.AppStandbyController", true, loader); - final Constructor ctor = clazz.getConstructor(Context.class, Looper.class); - return (AppStandbyInternal) ctor.newInstance(context, looper); + final Constructor ctor = clazz.getConstructor(Context.class); + return (AppStandbyInternal) ctor.newInstance(context); } catch (NoSuchMethodException | InstantiationException | IllegalAccessException | InvocationTargetException | ClassNotFoundException e) { throw new RuntimeException("Unable to instantiate AppStandbyController!", e); diff --git a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java index 5059e09796f8a..24436ea5180b6 100644 --- a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java +++ b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java @@ -110,6 +110,7 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.app.IBatteryStats; import com.android.internal.util.ArrayUtils; import com.android.internal.util.ConcurrentUtils; +import com.android.server.JobSchedulerBackgroundThread; import com.android.server.LocalServices; import com.android.server.pm.parsing.pkg.AndroidPackage; import com.android.server.usage.AppIdleHistory.AppUsageHistory; @@ -418,8 +419,8 @@ public class AppStandbyController implements AppStandbyInternal { } } - public AppStandbyController(Context context, Looper looper) { - this(new Injector(context, looper)); + public AppStandbyController(Context context) { + this(new Injector(context, JobSchedulerBackgroundThread.get().getLooper())); } AppStandbyController(Injector injector) { diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index 321657d5d626a..9b18ec644ceb0 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -215,8 +215,7 @@ public class UsageStatsService extends SystemService implements mHandler = new H(BackgroundThread.get().getLooper()); mAppStandby = AppStandbyInternal.newAppStandbyController( - UsageStatsService.class.getClassLoader(), getContext(), - BackgroundThread.get().getLooper()); + UsageStatsService.class.getClassLoader(), getContext()); mAppTimeLimit = new AppTimeLimitController( new AppTimeLimitController.TimeLimitCallbackListener() {