Android: вызов намерения перед блокировкой клавиатуры

Я делаю пользовательский экран блокировки. Я использовал следующие флаги для своей деятельности.

FLAG_DISMISS_KEYGUARD

FLAG_SHOW_WHEN_LOCKED

Поэтому, когда я разблокирую свой экран блокировки, блокировка клавиатуры по-прежнему показывает, есть ли у вас код на телефоне.

Теперь я хочу иметь возможность открывать другое приложение с моего экрана блокировки, которое также должно отображаться перед блокировкой клавиатуры. Когда это приложение закрыто, блокировка клавиатуры должна снова отображаться, чтобы вы не могли получить доступ к остальной части телефона без ввода кода.

Есть ли способ передать эти флаги новой активности? Или любой другой способ сделать так, чтобы новая активность отображалась перед блокировкой клавиатуры?


person Robbe    schedule 01.10.2014    source источник


Ответы (1)


Я тоже работаю над подобным приложением, и мне нужно было показать два экрана перед клавиатурой. (экран блокировки и некоторые другие экраны)

У меня была проблема только на Lollipop (5.0), флаги FLAG_SHOW_WHEN_LOCKED и FLAG_DISMISS_KEYGUARD вообще не отключали блокировку клавиатуры. Они просто позволили мне показать то, что я хотел, без необходимости иметь дело с какой-либо защитой клавиатуры, но как только я закрыл ранее показанный экран, защита клавиатуры была там. Это новое поведение, до версии 5.0 эти два флага полностью разблокировали блокировку клавиатуры.

Что касается моей проблемы, я просто установил флаги FLAG_SHOW_WHEN_LOCKED и FLAG_DISMISS_KEYGUARD для обоих действий, которые я хочу отображать поверх keyguard. Надеюсь, это поможет вам.

person Zsolt Boldizsár    schedule 25.11.2014