2016-06-22 4 views
1

Я работаю над приложением, где мне нужно получить событие или состояние устройства, когда экран устройства включен, но не заблокирован, экран не разблокирован. У любого органа есть представление об этом. Благодаря!!Событие состояния блокировки-блокировки экрана устройства в android

+0

Ваш вопрос не ясен. Пожалуйста, укажите больше. – Lawrance

ответ

1

У вас есть три доступных трансляции Intent.ACTION_SCREEN_OFF, Intent.ACTION_SCREEN_ON и Intent.ACTION_USER_PRESENT. Первое довольно очевидно. Остальные два отличаются тем, как пользователь просыпается на экране. Если это просто след, это ACTION_SCREEN_ON, если за ним следует разблокировка экрана Intent.ACTION_USER_PRESENT.

Сделать широковещательный приемник со следующим умысел фильтром:

 <intent-filter> 
      <action android:name="android.intent.action.SCREEN_ON" /> 
      <action android:name="android.intent.action.SCREEN_OFF" /> 
      <action android:name="android.intent.action.USER_PRESENT" /> 
     </intent-filter> 

В качестве альтернативы, чтобы получить текущее состояние можно использовать Display.getState() и PowerManager.isInteractive()

+1

Спасибо, я попробую это и дам вам знать, есть ли у меня еще какие-то вопросы. –

+0

Обратите внимание, что SCREEN_OFF и SCREEN_ON НЕ будут доставлены, если они зарегистрированы в манифесте. Вы должны зарегистрировать их на службе или в действии. – arts777

Смежные вопросы