1. BroadcastReciever广播:
  2. 他采用了一种设计模式,熟称观察者模式。
  3. 意思:当我注册一个广播的时候,申明了标记Action
  4. 当发送广播的时候,给传送的Intent设置了相同的标记Action
  5. 一呼一答的模式。
  6. 注册广播实现方式(两种):
  7. 一.在manifest.xml注册广播接收器
  8. 二.用代码动态实现广播接收器(一边在Activity的onResumu中实现)
  9. 先看第一种,实现如下:
  10. 1.创建广播接收器(MyReceiver )
  11. public class MyReceiver extends BroadcastReceiver {
  12. @Override
  13. public void onReceive(Context context, Intent intent) {
  14. Log.i("MyReceiver", "ACTION = " + intent.getAction());
  15. }
  16. }
  17. 2.在Manifest.xml中注册广播接收器
  18. <receiver android:name=".MyReveiver">
  19. <intent-filter>
  20. <action android:name="com.zm.broad"></action>
  21. </intent-filter>
  22. </receiver>
  23. 3.Activity中发送广播
  24. final String ACTION = "com.zm.broad";
  25. protected void onResume() {
  26. //发送广播
  27. Intent intent = new Intent();
  28. intent.setAction(ACTION);
  29. sendBroadcast(intent);
  30. super.onResume();
  31. }
  32. ---------------------------------------------
  33. 第二种实现如下:
  34. public class BroadcastActivity extends Activity {
  35. MyReceiver myReceiver;
  36. final String ACTION = "com.zm.broad";
  37. /** Called when the activity is first created. */
  38. @Override
  39. public void onCreate(Bundle savedInstanceState) {
  40. super.onCreate(savedInstanceState);
  41. setContentView(R.layout.main);
  42. //        Button button = (Button)findViewById(R.id.broadcast);
  43. //        button.setOnClickListener(new OnClickListener(){
  44. //
  45. //          public void onClick(View v) {
  46. //              Intent intent = new Intent();
  47. //              intent.setAction(ACTION);
  48. //              sendBroadcast(intent);
  49. //          }
  50. //
  51. //        });
  52. }
  53. @Override
  54. protected void onResume() {
  55. myReceiver = new MyReceiver();
  56. IntentFilter filter = new IntentFilter();
  57. filter.addAction(ACTION);
  58. //注册
  59. registerReceiver(myReceiver, filter);
  60. //发送广播
  61. Intent intent = new Intent();
  62. intent.setAction(ACTION);
  63. sendBroadcast(intent);
  64. super.onResume();
  65. }
  66. @Override
  67. protected void onPause() {
  68. unregisterReceiver(myReceiver);
  69. super.onPause();
  70. }
  71. class MyReceiver extends BroadcastReceiver{
  72. @Override
  73. public void onReceive(Context context, Intent intent) {
  74. Log.i("MyReceiver", "ACTION = " + intent.getAction());
  75. }
  76. }
  77. }

转载于:https://blog.51cto.com/zhangmin/780855

BroadcastReceiver广播相关推荐

  1. Android 学习笔记 BroadcastReceiver广播...

    PS:不断提升自己,是件好事... 学习内容: 1.BroadcastReceiver的使用.. 2.通过BroadcastReceiver去启动Service... 1.BroadcastRecei ...

  2. Android的BroadcastReceiver 广播 短信拦截

    如何去理解BroadcastReceiver(广播)?其实可以这样想,首先我们要有一个发送广播的"媒体",在这个例子中,我们暂且用activity组件作为这个媒体,当然以后会用到s ...

  3. BroadcastReceiver 广播

    BroadcastReceiver 广播 定义 原理 注册 静态注册 动态注册 广播发送者 广播接受者 定义 1.分为全局广播和本地广播. 2.是Android四大组件之一. 3.两部分:广播发送者. ...

  4. Android BroadcastReceiver广播接收android:priority优先级超过1000,达到2147483647时,广播优先级是否生效

    Android BroadcastReceiver广播接收android:priority优先级超过1000,达到2147483647时,广播优先级是否生效 本文作者使用priority=" ...

  5. 第12+13天BroadCastReceiver广播

    第12天BroadCastReceiver广播 BroadCastReceiver 一.BroadCastReceiver介绍: 二.如何实现广播 三.代码案例: 四.广播的分类: 1. 无序广播:s ...

  6. Android组件系列----BroadcastReceiver广播接收器

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  7. android 增加一条广播,Android中BroadcastReceiver广播使用及注意点

    Android中的广播用途很广,是四大组件之一.在android中可以看到它的各种应用,从系统发出的广播,用户自定义的广播等. 这里详细记录下广播的分类以及使用方法. 广播,是由两方面组成一个流程:广 ...

  8. 默认开机启动;通过Broadcastreceiver广播监听开机启动,实现没有activity的自启服务或者自启应用程序。...

    一.首先介绍一下如何开机启动: 第一种:  监控RECEIVE_BOOT_COMPLETED,即开机启动事件 第二种: 监控sd卡mount事件  开机总会扫描sd卡吧? 监控sd卡事件也有类似开机启 ...

  9. Android BroadcastReceiver广播详解

    BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来接收来自系统和应用中的广播. 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产 ...

  10. Android简单实现BroadCastReceiver广播机制

    Android中广播的作用是非常明显的,当我们收到一条信息,可能我们的应用需要处理一些数据,可能我们开机,我们的应用也需要处理一些数据,这里都用到了广播机制,这里简单的实现了一个自定义广播,看实例: ...

最新文章

  1. 带你玩玩转 MySQL 查询
  2. 网站用户体验的76个体验点
  3. (总结)Nginx配置文件nginx.conf中文详解
  4. 华思视频 CCNA 听而思
  5. 华为:数字化转型实践案例经验分享
  6. C#日期函数所有样式大全
  7. android selector
  8. HashMap与LinkedHashMap的结构对比
  9. English——Flowers, Language of flowers
  10. “万米网格管理法”助力省城城市管理
  11. EXFO max-715b光纤测试仪参数介绍
  12. Python爬虫之Spider类用法简单介绍
  13. 茅台抢购特产平台(葫芦娃)
  14. DLNA介绍(包括 UPnP)
  15. 看我是如何跟羊毛党战斗的之我也变成羊毛党
  16. 【解决方案】智慧水利:EasyNVR+EasyNVS视频监控解决方案
  17. 猪女同胞们:女神节快乐!CAD2016软件安装教程
  18. (推荐最新)Linux系统与VM虚拟机下载地址
  19. 观察者模式--微信公众号文章的推送
  20. BZOJ 2246 [SDOI2011]迷宫探险 (记忆化搜索)

热门文章

  1. 一头盔一电极,MIT机器人读心完毕
  2. 前阿里P10大神AI创业,主打决策智能,从《星际争霸II》开始
  3. 训练AI太辛苦?OpenAI新方法:不如让AI之间互教吧
  4. 谷歌新玩具Vision Kit,带你DIY一个能识别千种物体的AI摄像头
  5. ubuntu 下 lighttpd 支持 mod_cgi 的配置文件
  6. Git版本恢复命令reset(转载)
  7. linux ftp 实例
  8. hibernate fetch属性
  9. KVM的概念和云计算
  10. JDK+MyEclipse+Tomcat的配置(修改Tomcat 6.x的端口)