diff options
| -rw-r--r-- | apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java | 16 |
1 files changed, 10 insertions, 6 deletions
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 b1fb49c7f5f3..a6f47d4e4908 100644 --- a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java +++ b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java @@ -975,13 +975,17 @@ public class AppStandbyController + standbyBucketToString(newBucket)); } } else { - newBucket = getBucketForLocked(packageName, userId, - elapsedRealtime); - if (DEBUG) { - Slog.d(TAG, "Evaluated AOSP newBucket = " - + standbyBucketToString(newBucket)); + // Don't update the standby state for apps that were restored + if (!(oldMainReason == REASON_MAIN_DEFAULT + && (app.bucketingReason & REASON_SUB_MASK) + == REASON_SUB_DEFAULT_APP_RESTORED)) { + newBucket = getBucketForLocked(packageName, userId, elapsedRealtime); + if (DEBUG) { + Slog.d(TAG, "Evaluated AOSP newBucket = " + + standbyBucketToString(newBucket)); + } + reason = REASON_MAIN_TIMEOUT; } - reason = REASON_MAIN_TIMEOUT; } } |