1.动态broadcast
public class MainActivity extends AppCompatActivity {
DemoReceiver demoReceiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
demoReceiver=new DemoReceiver();
IntentFilter intentFilter=new IntentFilter();
intentFilter.addAction("any action is available");
// registerReceiver(demoReceiver,intentFilter);
}
@Override
protected void onDestroy() {
super.onDestroy();
// unregisterReceiver(demoReceiver);
}
class DemoReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
do anything...
}
}
}
2.静态broadcast
<receiver android:name=".MainActivity$DemoReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
3.本地广播
public class MainActivity extends AppCompatActivity {
DemoReceiver demoReceiver;
LocalBroadcastManager mLocalBroadcastManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// mLocalBroadcastManager=LocalBroadcastManager.getInstance(this);
demoReceiver=new DemoReceiver();
IntentFilter intentFilter=new IntentFilter();
intentFilter.addAction("any action is available");
// mLocalBroadcastManager.registerReceiver(demoReceiver,intentFilter);
}
@Override
protected void onDestroy() {
super.onDestroy();
// mLocalBroadcastManager.unregisterReceiver(demoReceiver);
}
public class DemoReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
do anything...
}
}
}