disablekeyguard () не работает должным образом, когда приемник SCREEN_ON запускается в Android 2.2?

Я пытаюсь отключить блокировку клавиатуры при срабатывании SCREEN_ON. Следующий код находится в службе, запущенной широковещательным приемником ACTION_SCREEN_ON: KeyguardManager myKeyGuard = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE); myLock = myKeyGuard.newKeyguardLock(); myLock.disableKeyguard(); Старт Активити("ххх");

Кажется, это работает, но есть проблема. После того, как экран включен и моя активность отображается в обход защиты клавиатуры, если пользователь нажимает кнопку «Домой», отображается экран блокировки, а если пользователь разблокирует экран, при следующем включении экрана защита клавиатуры не отключается. Мне нужно вручную разблокировать телефон, и действие действительно выполняется за экраном блокировки. Таким образом, кажется, что только функция disablekeyguard() перестает работать.

Любая помощь с благодарностью :)


person Pallav    schedule 12.09.2011    source источник
comment
Я разместил решение здесь: stackoverflow.com/a/15367581/1602034   -  person droideckar    schedule 12.03.2013


Ответы (1)


По-видимому, существует неоднозначность в том, как Android обрабатывает события клавиши «Домой». ОП сообщения здесь, кажется, сталкивается с той же проблемой. Ответов на его запрос пока нет.

person Supreethks    schedule 31.08.2012