Android学习笔记-广播的使用(一)
来源:互联网 发布:淘宝上买电影票能用吗 编辑:程序博客网 时间:2024/06/08 08:07
Android中的每个应用都可以对自己感兴趣的广播进行注册,这样该程序就能收到自己所关心的广播内容。
安卓中的广播分两种, 标准广播(Normal broadcast)和有序广播(Ordered broadcast)
标准广播是完全异步执行的,广播发出后,所有的接收器同时收到
有序广播是同步执行的,广播发出后,同一时刻只会有一个接收器能接到这条广播,当这个接收器的逻辑执行完毕后,广播才会继续传递。
实例1:当网络状态发生改变时,使用Toast提示信息
public class MainActivity extends Activity {private IntentFilter intentFilter;private NetworkChangeReceiver networkChangeReceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); intentFilter=new IntentFilter(); networkChangeReceiver = new NetworkChangeReceiver(); intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE"); registerReceiver(networkChangeReceiver, intentFilter); } @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); unregisterReceiver(networkChangeReceiver); }class NetworkChangeReceiver extends BroadcastReceiver{@Overridepublic void onReceive(Context arg0, Intent arg1) {// TODO Auto-generated method stubToast.makeText(MainActivity.this, "network changes", Toast.LENGTH_SHORT).show();}}}NetChangeReceiver是一个内部类,继承自Broadcast,这是一个广播接收器,重写onReceiver()方法,实现收到该接收器收到广播后的逻辑操作。
在MainActivity中,重写onCreat(),使用IntentFilter定义广播接收器要接受的广播,使用registerReceiver方法动态注册广播接收器。
重写onDestroy()使用unregisterReceiver解除注册。
关于IntentFilter,我找到一篇很不错的文章,这里先贴上原文链接,在下一篇博客中会有关于IntentFilter的深入学习
IntentFilter详解
0 0
- Android学习笔记-广播的使用(一)
- 【Android】安卓学习笔记之广播(四)使用本地广播
- Android广播学习笔记
- Android学习笔记-----------广播
- android 学习笔记 发送有序的广播
- Android笔记--实现广播的使用
- Android学习笔记之广播(2)
- android学习笔记(广播接受者)
- android 学习 广播机制的使用
- Android学习之本地广播的使用
- Android之BroadcastReceiver(接收广播消息)学习笔记(一)
- 【Android】安卓学习笔记之广播(一)动态注册监听网络变化
- android学习笔记一(ListView的使用)
- Android学习笔记(四一):SQLite的使用
- Android学习笔记(四一):SQLite的使用
- Android 开发学习笔记(一) LRU 算法的使用
- 【Android】安卓学习笔记之广播(三)发送标准广播和有序广播
- android学习笔记---广播机制
- 堆排序
- Android 功能引导
- Java关键字介绍之this与super
- 微软100题第5题
- Android4.4-Launcher源码分析系列之关键的类和接口之DropTarget、DragSource
- Android学习笔记-广播的使用(一)
- 去掉 vivado 自动添加的 bufg
- 干货阿里巴巴 开源软件列表
- 关于C# 装箱拆箱的理解
- Activity的启动模
- 利用广播机制判断当前网络状态
- java中常用英文术语含义归纳
- 打开Android studio弹出来"cannot lock system folders"框框的解决方法
- Android内存泄露总结