BreadCast的用法说明

每次系统Broadcast事件发生后,系统就会创建对应的BroadcastReceiver的实例,并自动触发它的onReceive()方法,onRecevie()方法执行完后,BroadcastReceiver的实例就被销毁
动态注册方法:

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    recevier = new myreceiver();
    intentFilter = new IntentFilter();
    intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
    //当网络发生变化的时候,系统广播会发出值为
    registerReceiver(recevier,intentFilter);
    }

继承:

public class myreceiver extend BroadcasetReceiver{
@override
pulic void onReceive(Context context,Intent intent){
Toast.......;
}
}

xml文件静态注册方法

    <receiver android:name=".myreceiver"
     android:exported="true"
      android:enabled="true">
    <intent-filter>
   <action    android:name="android.intent.action.BOOT_COMPLETED">
          //开机完成后系统广播发出的一条值为android.intent.action.BOOT_COMPLETED的广播
 </intent-filter>
</receiver>

用法:

       Intent intent = new Intent();
                intent.setAction("com.example.mymessage");
                //Intent intent = new Intent("com,example.mymessage");
                //也可以像注释这样写
                sendBroadcast(intent);//发送标准广播
        sendOrderedBroadcast(intent,null);//发送有序广播

1、静态注册
指的是在AndroidManifest.xml中用<receiver>标签进行注册,并在标签内用<intent-filter>标签设置过滤器,例如<action>、<data>等。

<receiverandroid:name=".MyBroadCastReceiver">

<intent-filter>

    <actionandroid:name="android.intent.action.PACKAGE_REMOVED"/>

    <dataandroid:scheme="package"/>

</intent-filter>

</receiver>

2、动态注册
指的是在代码中进行注册,例如:

    IntentFilterfilter = new IntentFilter();

    filter.addAction(Intent.ACTION_PACKAGE_REMOVED);

    filter.addDataScheme(“package”);

当不再需要广播接收器时,要记得注销unregisterReceiver(),否则可能引起内存泄露。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android系统的四大组件还有一种BroadcastReceiver,这种组件本质上就是一个全局监听器,用于监听...
    AndYMJ阅读 3,043评论 0 0
  • 参考承香墨影的两篇博客Android--广播BroadcastReceiverAndroid--拦截系统Broad...
    合肥黑阅读 6,202评论 2 11
  • 2.1 Activity 2.1.1 Activity的生命周期全面分析 典型情况下的生命周期:在用户参与的情况下...
    AndroidMaster阅读 8,322评论 0 8
  • 前阵子,一位叫刘洪滨(斌)的老太太火了。 她“身怀绝技”,有一大堆吊炸天的马甲:苗药专家、中医保健专家、草原老蒙医...
    Sir电影阅读 5,016评论 2 43
  • 高尔夫球世界第一冯珊珊说:“我喜欢设长远目标,再把这个长远目标拆解成短期目标,这样我就能确保我的方向是对的。” 有...
    十九的情话不甜阅读 1,657评论 0 0

友情链接更多精彩内容