1、发送广播
Intent intent = new Intent(Intent.ACTION_SCREEN_ON);
intent.setClassName("Package_Name", "Package_Name" + ".Class_Name");// 如果发广播给Service,此行可省略,因为Service始终运行于后台。
sendBroadcast(intent);
2、接收广播
// 注册Receiver(一般用在onStart()或onCreate()方法中)
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_SCREEN_ON);// 可add多个action以接收多个广播,在onReceive方法中进行判断分别处理。
registerReceiver(boradcastReceiver, filter);
// 反注册Receiver(一般用在onDestroy()方法中)
unregisterReceiver(boradcastReceiver);
// 描述接收到广播后的操作
private BroadcastReceiver boradcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (Intent.ACTION_SCREEN_ON.equals(action)) {
// Todo;
}
}
};