四大组件之BroadcastReceiver
来源:互联网 发布:python 2.7.11.tgz 编辑:程序博客网 时间:2024/05/01 07:08
四大组件之广播接收者(BroadcastReceiver)
概念
在Android 中,Broadcast 是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver 是对发送出来的Broadcast 进行过滤接受并响应的一类组件,是Android 四大组件之一。广播接收者(BroadcastReceiver)用于接收广播的,广播的发送是通过调用sendBroadcast(Intent)/sendOrderedBroadcast(Intent)来实现的。通常一个广播可以被多个广播接收者所接收。广播被分为两种不同的类型:“普通广播(Normal Broadcasts)”也叫无序广播和“有序广播(OrderedBroadcasts)”。
广播接受者的含义:
广播:广而告之(全局性 在整个手机里面都能显示)接收者:被动的去接受数据
常用的广播接受者
在广播接受者里面开启Activity需要加一个falg因为广播接受者里面不存在上下文所以需要flag告知Activity运行在自己的任务栈里面
1. SD卡状态
2. 开机启动
3. 外拨电话
4. 应用程序安装和卸载
5. 短信的广播接收者
adnroid.provi
Android4.0后需要加一个权限
广播是Android 四大组件之一,因此需要在AndroidManifest.xml 中进行注册。同时监听用户的拨打电话行为也属于侵犯用户隐私的行为,因此需要添加权限
在一个意图里面可以配置多个action在广播中需要进行判断执行
即使应用程序的进程不存在,当广播事件到来的时候,广播接受者的进程就会自动启动,响应广播事件
高版本4.0以后的 可以强行停止来终止广播接收者
广播电台
- 有序广播
- 广播消息是按照接收者声明的优先级别,被接收者依次接收广播,
- 需要在AndroidManifest.xml 中进行注册,优先级别声明在intent-filter 元素的android:priority 属性中,数越大优先级别越高,取值范围:-1000 到1000。
- 高优先级的可以拦截广播消息 .abortBroadcast()或者修改广播消息调用IntentFilter 对象的.setPriority()进行设置。
- 效率低
- 无序广播
- 没完全异步(就是不会被某个广播接收者终止)的,可以在同一时刻(逻辑上)被所有接收者接收到
- 效率高
特殊广播事件
在Android里面有一些产生非常频繁的广播事件,在清单文件里面配置是不会生效的,只能在代码中进行注册。
如电量变化、锁屏和解锁的操作(一般用于视频、地图)
roadCastReceiver 的注册方式有两种:
1、静态注册(就是通过AndroidManifest.xml 注册)
2、动态注册(就是通过代码注册)。
在本文中前面使用到的BroadCastReceiver
全部都使用的是静态注册方式,其实也可以使用动态注册,但是对于锁屏解屏和电量变化的监听只能通过动态注册
法。
- 服务只会停止一次
0 0
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之:BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- 四大组件之BroadcastReceiver
- android关闭手机偷录她人功能实现(退出程序依然录像)
- java查漏补缺(基础篇)
- 《失控》读书笔记
- 四大组件Activity
- php性能优化之设置php session多级目录(原文http://www.bewyn.com/archives/44)
- 四大组件之BroadcastReceiver
- C++中指针与C#中引用类型传递相似性
- 集合框架_Collection存储自定义对象并遍历案例
- easyui 自适应 fit属性
- Json解析,FastJson解析
- 三国佚事——巴蜀之危
- python 替换数据库中文本中特殊字符
- php 安装xdebug扩展
- javascript数据类型