#android
#Android
Вопрос:
В моем приложении есть будильник, который срабатывает после периода, в течение которого телефон перешел в спящий режим. Я хочу, чтобы скользящая блокировка была переопределена при срабатывании будильника, чтобы текущее представление становилось видимым сразу. В момент срабатывания будильника начинает выполняться код (активирует камеру), но экран остается пустым. Если я нажму клавишу питания, а затем сдвину блокировку, появится экран камеры в режиме реального времени. Я вызываю следующий код, чтобы попытаться разбудить устройство и показать экран, но, похоже, это не имеет никакого значения. Последнее, что я пытался, это добавить вызов UserActivity, теперь у меня закончились попытки, и я надеюсь, что у кого-то есть некоторый опыт в том, как это сделать.
public void setWakeLock(WakeLock wakeLock) {
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK |
PowerManager.ACQUIRE_CAUSES_WAKEUP, "MyWakeLock");
if ((wakeLock != null) amp;amp; // we have a WakeLock
(wakeLock.isHeld() == false)){
wakeLock.acquire();
pm.userActivity(SystemClock.uptimeMillis(), true);
}
}
Ответ №1:
Проверьте android.app.KeyguardManager.Класс KeyguardLock. Вам нужно вызвать disableKeyguard () оттуда.