一、实现屏幕状态的广播
实现代码如下所示:
public class ScreenBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Logger.e("广播Action = " + action);
if (action.equals(Intent.ACTION_SCREEN_OFF)) {
Logger.e("锁屏");
} else if (action.equals(Intent.ACTION_SCREEN_ON)) {
Logger.e("解锁");
}else if(action.equals(Intent.ACTION_USER_PRESENT)){
Logger.e("开屏");
}
}
}
二、注册屏幕状态的广播
代码如下所示:
ScreenBroadcastReceiver screenBroadcastReceiver = new ScreenBroadcastReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_SCREEN_OFF);
filter.addAction(Intent.ACTION_SCREEN_ON);
filter.addAction(Intent.ACTION_USER_PRESENT);
getApplicationContext().registerReceiver(screenBroadcastReceiver, filter);