Android 接收系统广播--学习笔记

在android中有两种广播:标准广播(异步、不可截断)和有序广播(同步、可截断),对应广播接收器的注册方法也有两种即: 动态注册静态注册
首先需要知道当系统电量、时间、时区等等改变时会发出系统广播,我们需要使用创建广播接收器来接收广播并添加相应逻辑,以动态注册监听网络变化为例具体步骤如下:

  1. 创建一个类继承BraodcastReceiver如:class NetChangBraodcastReceiver extends BraodcastReceiver(){}

  2. 在创建的类中重写onReceive方法如:public void onReceive (Context context,Intent intent){//加入具体的逻辑}

  3. 在需要接收广播的Activity中添加要接收的广播并注册如:
    intentFilter = new IntentFilter(); intentFilter.addAction("android.net.conn.CONNETIVITY_CHANGE"); //添加需接收广播 netChangBraodcastReceiver = new NetChangBraodcastReceiver(); registerReceiver(netChangBraodcastReceiver,intentFilter);//注册广播

  4. 动态注册的广播接收器一定要取消注册,我们可以在onDestroy()中调用unRegister Receiver()来实现:super.onDestroy(); unRegister Receiver(netChangBraodcastReceiver );
    这样动态注册监听网络变化就完成了。

你可能感兴趣的:(Android 接收系统广播--学习笔记)