OSDN Git Service

Attempt to fix problem where keyguard isn't locking
authorJim Miller <jaggies@google.com>
Thu, 3 Mar 2016 00:02:24 +0000 (16:02 -0800)
committerJim Miller <jaggies@google.com>
Sat, 5 Mar 2016 02:19:34 +0000 (18:19 -0800)
Keyguard should be using setExactAndAllowWhileIdle() to guarantee
the device wakes and locks on time.

Bug 27391589

Change-Id: I2b688ee68069ceafeecfb48cada8671435f8d850

packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java

index 6029c23..6e5d47e 100644 (file)
@@ -811,7 +811,7 @@ public class KeyguardViewMediator extends SystemUI {
         intent.putExtra("seq", mDelayedShowingSequence);
         PendingIntent sender = PendingIntent.getBroadcast(mContext,
                 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
-        mAlarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, when, sender);
+        mAlarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP, when, sender);
         if (DEBUG) Log.d(TAG, "setting alarm to turn off keyguard, seq = "
                          + mDelayedShowingSequence);
         doKeyguardLaterForChildProfilesLocked();
@@ -828,7 +828,8 @@ public class KeyguardViewMediator extends SystemUI {
                 lockIntent.putExtra(Intent.EXTRA_USER_ID, info.id);
                 PendingIntent lockSender = PendingIntent.getBroadcast(
                         mContext, 0, lockIntent, PendingIntent.FLAG_CANCEL_CURRENT);
-                mAlarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, userWhen, lockSender);
+                mAlarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP,
+                        userWhen, lockSender);
             }
         }
     }