Soh*_*eil 24 android android-activity android-broadcast
提到这里,当屏幕熄灭,在onStop()当前活动的将被调用.我需要在调用onStop()my 时检查屏幕的开/关状态Activity.所以我已经注册了BroadcastReceiver这些动作(ACTION_SCREEN_ONAND ACTION_SCREEN_OFF)来记录当前的开/关状态(并且它们正常工作,我已经记录了!).
但当我关闭屏幕并检查其中的开/关状态时onStop,表示屏幕已打开.为什么?我认为接收器必须接收ACTION_SCREEN_OFF之前onStop被调用所以有什么问题?
Ale*_*nov 58
您可以尝试使用PowerManager系统服务,此处是示例和官方文档(请注意此方法已在API级别7中添加):
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
boolean isScreenOn = pm.isScreenOn();
Run Code Online (Sandbox Code Playgroud)
编辑:
isScreenOn()方法已弃用API级别21.您应该使用isInteractive:
boolean isScreenOn = pm.isInteractive();
Run Code Online (Sandbox Code Playgroud)
http://developer.android.com/reference/android/os/PowerManager.html#isInteractive()
| 归档时间: |
|
| 查看次数: |
19342 次 |
| 最近记录: |