1、四大组件之BroadcastReceiver
(1)Broadcast(广播)--一种广泛运用在应用程序之间传输信息的机制
(2)BroadcastReceiver(广播接受者)--是对发送过来的广播进行过滤接收并响应的一类组件,它就是用来接收来自系统和应用中的广播
(3)用途:开机(或网络状态改变、或电池电量改变)时产生一条广播
(4)大大的减少开发的工作量和开发周期
(5)发送:把信息装入一个Intent对象(如Action、Category)
                  通过调用相应的方法将Intent对象以广播的形式发送出去【sendBroadcast( ),sendOrderBroadcast ( ).sendStickyBroadcast ( )】
(6)接收:当intent发送以后,所有已经注册的BroadcastReceiver会检查注册时的intentFilter(注册器)是否与发送的intent相匹配,若匹配则就会调用BroadcastReceiver的onReceiver()方法。所以当我们定义一个BroadcastReceiver的时候,都需要实现onReceiver()方法。
注意:BroadcastReceiver需要注册(静态注册、代码注册)
(7)注意!
①BroadcastReceiver生命周期只有十秒左右
②在BroadcastReceiver里不能做一些比较耗时的操作
③应该通过发送intent给Service,由Service来完成
④不能使用子线程
(8)广播的种类:普通广播(normal broadcast)、有序广播(优先级)、异步广播(粘滞性滞留广播)
(9)添加优先级代码:<intent-filter     android:priority="100"> ..............</intent-filter >
(10)截断广播方法:abortBroadcast( );
(11)静态注册:在配置文件中注册
(12)代码注册:IntentFilter intentFilter=new IntentFilter("BC_One"); 
                           BC2 bc2=new BC2( );
                           registerReceiver(bc2,intentFilter);
(13)普通广播
1、同级别的 动态加载优先级大于静态加载 (只在代码正常运行过程中,死掉了就不行)
2、同级别的接收顺序随机(无序)
3、接收器不能截断广播的连续性传播也不能处理广播
4、优先级高的先于优先级低的
(14)有序广播
1、同级别的 动态加载优先级大于静态加载
2、同级别的接收顺序随机(无序)
3、接收器能截断广播的连续性传播,高级别的广播接收器收到广播之后,可以决定把该广播是否截断
4、接收器能截断广播的连续性传播也能处理广播

Android-Broadcast(广播)的更多相关文章

  1. android Broadcast广播消息代码实现

    我用的是Fragment , 发送写在一个类中,接收写在另外一个类的内部类中.代码动态实现注册. 代码: myReceiver = new zcd.netanything.MyCar.myReceiv ...

  2. Android 启动Service服务和发送Broadcast广播的常用方法

    一.先说Service服务. 1.利用setAction()方法来指定启动的Service服务 Intent intent = new Intent(); intent.setAction(" ...

  3. 安卓开发笔记——Broadcast广播机制(实现自定义小闹钟)

    什么是广播机制? 简单点来说,是一种广泛运用在程序之间的传输信息的一种方式.比如,手机电量不足10%,此时系统会发出一个通知,这就是运用到了广播机制. 广播机制的三要素: Android广播机制包含三 ...

  4. Android学习--广播机制

    广播机制简介 Android的广播可以分为两种类型的,标准广播和有序的广播: 标准广播:  是一种完全异步执行的广播,在广播发出去之后,所有的广播接收器几乎是同一时接收到这条广播. 有序广播:  是一 ...

  5. 【Android】广播BrocastReceiver

    1.Android中广播主要分为两种:标准广播和有序广播. 标准广播:完全异步执行.广播发出后,所有的广播接收器几乎在同一刻收到广播事件,没有先后顺序之分. 优点:效率高 缺点:不能被截断 有序广播: ...

  6. Android之 广播

    (以下内容是阅读郭霖大神的<第一行代码>后自己总结的) 1.概述 广播是Android的四大组件之一. Android的广播机制十分灵活. 2.发送广播 如上图Android的广播主要分为 ...

  7. Android开发学习—— Broadcast广播接收者

    现实中:电台要发布消息,通过广播把消息广播出去,使用收音机,就可以收听广播,得知这条消息.Android中:系统在运行过程中,会产生许多事件,那么某些事件产生时,比如:电量改变.收发短信.拨打电话.屏 ...

  8. Android Studio 单刷《第一行代码》系列 07 —— Broadcast 广播

    前情提要(Previously) 本系列将使用 Android Studio 将<第一行代码>(书中讲解案例使用Eclipse)刷一遍,旨在为想入坑 Android 开发,并选择 Andr ...

  9. 【转】 android之如何在两个activity之间传递handler_利用broadcast广播机制

    原文:http://blog.csdn.net/jason0539/article/details/18075293 这算是如何在两个activity之间传递handler的解决方案二了,解决方案一见 ...

  10. 【Android】BroadCast广播机制应用与实例

    如何编写广播接收器 第一步:需要继承BroadcastReceiver类,覆写其中的onReceive()方法. class MyBroadcastReceiver extends Broadcast ...

随机推荐

  1. pycahrm使用docstrings来指定变量类型、返回值类型、函数参数类型

    py里面不需要显示声明类型,这和java c这些静态语言不同,虽然python这样做少了一些代码和写代码的困难度,但还是非常多的弊端的,运行速度 代码安全, 这些都是语言本身带来的本的弊端,这些没办法 ...

  2. 【动态规划】数字分组I

    [动态规划]数字分组I 时间限制: 1 Sec  内存限制: 64 MB提交: 10  解决: 6[提交][状态][讨论版] 题目描述 给出一堆魔法石的重量,问如何分成两堆,使得它们质量和之差最小,求 ...

  3. orcle时间

    Oracle计算时间差函数 两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差 (分别以天,小时,分钟,秒,毫秒): 天: ROUND(TO_NUMBER(END_D ...

  4. iOS AppsFlyer的使用注意事项

    AppFlyer 是近期比較火的一款广告追踪统计工具,当然统计的功能友盟也能够实现,而appsflyer更是具有定向投放,是app跳转到对应的页面. 详细的:当点击广告的时候,假设没有安装应用.则会跳 ...

  5. MapWinGIS------下载与安装

    最新版本下载地址: https://github.com/MapWindow/MapWinGIS/releases 1.下载后按步骤安装即可 2.右键以管理员身份运行cmd,运行:regsvr32 C ...

  6. 【django】Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。

    问题描述:启动django服务时出现“Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试.”的错误 问题原因:8000端口被占用了 解决办法:默认启动的 ...

  7. SpringBoot 常见问题记录

    问题一 Error starting ApplicationContext. To display the auto-configuration report re-run your applicat ...

  8. CentOS6.5下安装Oracle11g

    一.安装前系统准备 1. 修改主机名 #sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb.01/" /etc/s ...

  9. 转:桩模块 stub 和驱动模块 driver

    迷惑我很久的stub的概念,今天终于看到觉得靠谱的了,原文地址:http://xyzhaoangela.blog.hexun.com/14208786_d.html 桩模块stub:集成测试前要为被测 ...

  10. Android 之 布局训练

      1.线性布局 LinearLayout <?xml version="1.0" encoding="utf-8"?> <LinearLay ...