您的位置:首页 > 移动开发 > Android开发

Android判断屏幕开关状态

2015-12-01 09:59 369 查看
方法一:使用系统服务

PowerManager pm= (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);

if(!pm.isScreenOn())
{
//熄屏状态
}


方法二:使用广播

public class ScreenReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {

//收到亮屏广播

} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {

//收到熄屏广播

}

}
}


//注册广播
ScreenReceiver sOnBroadcastReciver=new ScreenReceiver();
IntentFilter recevierFilter=new IntentFilter();
recevierFilter.addAction(Intent.ACTION_SCREEN_ON);
recevierFilter.addAction(Intent.ACTION_SCREEN_OFF);
registerReceiver(sOnBroadcastReciver, recevierFilter);

//取消注册
if(sOnBroadcastReciver!=null)
{
unregisterReceiver(sOnBroadcastReciver);
}


注意:亮屏和熄屏广播只能通过动态注册才能收到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: