summaryrefslogtreecommitdiff
path: root/apex
diff options
context:
space:
mode:
authorKweku Adams <kwekua@google.com>2021-08-20 01:28:28 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2021-08-20 01:28:28 +0000
commit596af18f0ff2030217462dfed3cca4e2596105d5 (patch)
tree7a16c2a2b8fb2d68ffea464533551275e536eb58 /apex
parent3393d56d2cc6277d83e1a6b5f25d0070b908917a (diff)
parenta7cb583f3a7b13b06e09c4377e0e01145f7e0464 (diff)
Merge "Use an exact alarm for location timeout." into sc-dev
Diffstat (limited to 'apex')
-rw-r--r--apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
index 45588e831cb9..9eb7bb7149ef 100644
--- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
+++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
@@ -3941,6 +3941,10 @@ public class DeviceIdleController extends SystemService
if (idleUntil) {
mAlarmManager.setIdleUntil(AlarmManager.ELAPSED_REALTIME_WAKEUP,
mNextAlarmTime, "DeviceIdleController.deep", mDeepAlarmListener, mHandler);
+ } else if (mState == STATE_LOCATING) {
+ // Use setExact so we don't keep the GPS active for too long.
+ mAlarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP,
+ mNextAlarmTime, "DeviceIdleController.deep", mDeepAlarmListener, mHandler);
} else {
if (mConstants.USE_WINDOW_ALARMS) {
mAlarmManager.setWindow(AlarmManager.ELAPSED_REALTIME_WAKEUP,