BroadcastReceiver广播
- BroadcastReciever广播:
- 他采用了一种设计模式,熟称观察者模式。
- 意思:当我注册一个广播的时候,申明了标记Action
- 当发送广播的时候,给传送的Intent设置了相同的标记Action
- 一呼一答的模式。
- 注册广播实现方式(两种):
- 一.在manifest.xml注册广播接收器
- 二.用代码动态实现广播接收器(一边在Activity的onResumu中实现)
- 先看第一种,实现如下:
- 1.创建广播接收器(MyReceiver )
- public class MyReceiver extends BroadcastReceiver {
- @Override
- public void onReceive(Context context, Intent intent) {
- Log.i("MyReceiver", "ACTION = " + intent.getAction());
- }
- }
- 2.在Manifest.xml中注册广播接收器
- <receiver android:name=".MyReveiver">
- <intent-filter>
- <action android:name="com.zm.broad"></action>
- </intent-filter>
- </receiver>
- 3.Activity中发送广播
- final String ACTION = "com.zm.broad";
- protected void onResume() {
- //发送广播
- Intent intent = new Intent();
- intent.setAction(ACTION);
- sendBroadcast(intent);
- super.onResume();
- }
- ---------------------------------------------
- 第二种实现如下:
- public class BroadcastActivity extends Activity {
- MyReceiver myReceiver;
- final String ACTION = "com.zm.broad";
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- // Button button = (Button)findViewById(R.id.broadcast);
- // button.setOnClickListener(new OnClickListener(){
- //
- // public void onClick(View v) {
- // Intent intent = new Intent();
- // intent.setAction(ACTION);
- // sendBroadcast(intent);
- // }
- //
- // });
- }
- @Override
- protected void onResume() {
- myReceiver = new MyReceiver();
- IntentFilter filter = new IntentFilter();
- filter.addAction(ACTION);
- //注册
- registerReceiver(myReceiver, filter);
- //发送广播
- Intent intent = new Intent();
- intent.setAction(ACTION);
- sendBroadcast(intent);
- super.onResume();
- }
- @Override
- protected void onPause() {
- unregisterReceiver(myReceiver);
- super.onPause();
- }
- class MyReceiver extends BroadcastReceiver{
- @Override
- public void onReceive(Context context, Intent intent) {
- Log.i("MyReceiver", "ACTION = " + intent.getAction());
- }
- }
- }
转载于:https://blog.51cto.com/zhangmin/780855
BroadcastReceiver广播相关推荐
- Android 学习笔记 BroadcastReceiver广播...
PS:不断提升自己,是件好事... 学习内容: 1.BroadcastReceiver的使用.. 2.通过BroadcastReceiver去启动Service... 1.BroadcastRecei ...
- Android的BroadcastReceiver 广播 短信拦截
如何去理解BroadcastReceiver(广播)?其实可以这样想,首先我们要有一个发送广播的"媒体",在这个例子中,我们暂且用activity组件作为这个媒体,当然以后会用到s ...
- BroadcastReceiver 广播
BroadcastReceiver 广播 定义 原理 注册 静态注册 动态注册 广播发送者 广播接受者 定义 1.分为全局广播和本地广播. 2.是Android四大组件之一. 3.两部分:广播发送者. ...
- Android BroadcastReceiver广播接收android:priority优先级超过1000,达到2147483647时,广播优先级是否生效
Android BroadcastReceiver广播接收android:priority优先级超过1000,达到2147483647时,广播优先级是否生效 本文作者使用priority=" ...
- 第12+13天BroadCastReceiver广播
第12天BroadCastReceiver广播 BroadCastReceiver 一.BroadCastReceiver介绍: 二.如何实现广播 三.代码案例: 四.广播的分类: 1. 无序广播:s ...
- Android组件系列----BroadcastReceiver广播接收器
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- android 增加一条广播,Android中BroadcastReceiver广播使用及注意点
Android中的广播用途很广,是四大组件之一.在android中可以看到它的各种应用,从系统发出的广播,用户自定义的广播等. 这里详细记录下广播的分类以及使用方法. 广播,是由两方面组成一个流程:广 ...
- 默认开机启动;通过Broadcastreceiver广播监听开机启动,实现没有activity的自启服务或者自启应用程序。...
一.首先介绍一下如何开机启动: 第一种: 监控RECEIVE_BOOT_COMPLETED,即开机启动事件 第二种: 监控sd卡mount事件 开机总会扫描sd卡吧? 监控sd卡事件也有类似开机启 ...
- Android BroadcastReceiver广播详解
BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来接收来自系统和应用中的广播. 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产 ...
- Android简单实现BroadCastReceiver广播机制
Android中广播的作用是非常明显的,当我们收到一条信息,可能我们的应用需要处理一些数据,可能我们开机,我们的应用也需要处理一些数据,这里都用到了广播机制,这里简单的实现了一个自定义广播,看实例: ...
最新文章
- 带你玩玩转 MySQL 查询
- 网站用户体验的76个体验点
- (总结)Nginx配置文件nginx.conf中文详解
- 华思视频 CCNA 听而思
- 华为:数字化转型实践案例经验分享
- C#日期函数所有样式大全
- android selector
- HashMap与LinkedHashMap的结构对比
- English——Flowers, Language of flowers
- “万米网格管理法”助力省城城市管理
- EXFO max-715b光纤测试仪参数介绍
- Python爬虫之Spider类用法简单介绍
- 茅台抢购特产平台(葫芦娃)
- DLNA介绍(包括 UPnP)
- 看我是如何跟羊毛党战斗的之我也变成羊毛党
- 【解决方案】智慧水利:EasyNVR+EasyNVS视频监控解决方案
- 猪女同胞们:女神节快乐!CAD2016软件安装教程
- (推荐最新)Linux系统与VM虚拟机下载地址
- 观察者模式--微信公众号文章的推送
- BZOJ 2246 [SDOI2011]迷宫探险 (记忆化搜索)