From ebda0286d4326c67d9e13202180f37ee41b5323a Mon Sep 17 00:00:00 2001 From: Soonil Nagarkar Date: Mon, 10 Apr 2017 14:55:37 -0700 Subject: [PATCH] Fix foreground importance bug in LocationManagerService. Bug: 37121975 Test: tested locally Change-Id: I2563408d10edfac74d04d68116cbf2a2ac66e9a3 --- .../java/com/android/server/LocationManagerService.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/LocationManagerService.java b/services/core/java/com/android/server/LocationManagerService.java index a6f3e39ffbcfc..b4270cf153cc4 100644 --- a/services/core/java/com/android/server/LocationManagerService.java +++ b/services/core/java/com/android/server/LocationManagerService.java @@ -146,6 +146,9 @@ public class LocationManagerService extends ILocationManager.Stub { // The maximum interval a location request can have and still be considered "high power". private static final long HIGH_POWER_INTERVAL_MS = 5 * 60 * 1000; + private static final int FOREGROUND_IMPORTANCE_CUTOFF + = ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND_SERVICE; + // default background throttling interval if not overriden in settings private static final long DEFAULT_BACKGROUND_THROTTLE_INTERVAL_MS = 30 * 60 * 1000; @@ -376,7 +379,7 @@ public class LocationManagerService extends ILocationManager.Stub { } }; mActivityManager.addOnUidImportanceListener(uidImportanceListener, - ActivityManager.RunningAppProcessInfo.IMPORTANCE_PERCEPTIBLE); + FOREGROUND_IMPORTANCE_CUTOFF); mUserManager = (UserManager) mContext.getSystemService(Context.USER_SERVICE); updateUserProfiles(mCurrentUserId); @@ -453,7 +456,7 @@ public class LocationManagerService extends ILocationManager.Stub { } private static boolean isImportanceForeground(int importance) { - return importance <= ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND_SERVICE; + return importance <= FOREGROUND_IMPORTANCE_CUTOFF; } /**