BroadcastReceiver广播接收器
必须继承BroadcastReceiver这里类,重写onReceiver()方法处理逻辑。
如:
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context,"收到自己的广播",Toast.LENGTH_SHORT).show();
}
}
然后就是动态的去注册广播接收器
intentFilter=new IntentFilter();
//这里的action可以是系统的,如果是系统的就不用自己写发送广播
intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
MyBroadcastReceiver receiver=new MyBroadcastReceiver();
registerReceiver(localReceiver,intentFilter);
如何去定义一个自己发送的广播呢:
Intent intent=new Intent(“cn.hotwoo.main.MY_BROADCAT”);
sendBroadcast(intent);
还有一种广播是本地的广播,需要一个广播管理器。通过它来注册广播接收器和发送广播,其他都一样.
(注意:本地广播无法通过静态注册的方式来接收,因为静态注册是为了让程序在未启动的情况下也能收到广播)