Я разрабатываю приложение для будильника. Из основного действия я устанавливаю будильник с помощью трансляции. Затем в onReceive в широковещательном приемнике я вызываю действие, которое позволяет пользователю выключить или отложить будильник... В этом действии в начале onCreate я использую эти строки, чтобы включить экран и разблокировать устройство:
final Window win = getWindow();
win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
Это работает идеально подходит для Samsung Galaxy S2 с Android 2.3.4, но не работает на htc с Android 2.3.5. На htc он ничего не делает, и когда я нажимаю кнопку блокировки, экран автоматически разблокируется, и я не перетаскиваю кружок. Как будто flag_dissmiss_keygard работает, а flag_turn_screen_on нет. Есть ли другой способ или другое решение для этого?