开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在配置里面注册action为 android.intent.action.USER_PRESENT的广播,则可以监听解锁事件。但有时候,在后台执行某个操作时,需要主动判断屏幕的状态,比如是否是亮着的,可以使用PowerManager的isScreenOn方法进行判断,比如屏幕是否开启了自动旋转等。
注册监听解锁广播:
1
2
3
4
5
|
<
receiver
android:name
=
"com.home.testscreen.MyReceiver"
>
<
intent-filter
>
<
action
android:name
=
"android.intent.action.USER_PRESENT"
/>
</
intent-filter
>
</
receiver
>
|
MyReceiver:
主动判断屏幕是否亮着:
判断是否开启了重力感应: