在Android程序中使用广播,有两种注册广播接收器的方式,区别如下:

第一种方式:在AndroidManifest.xml文件中注册

<receiver android:name="MyReceiver" >            <intent-filter >                <action android:name="com.and.android.intent.action.TEST" />                <action android:name="android.net.wifi.WIFI_STATE_CHANGED" />            </intent-filter></receiver>

这里注册了自己的广播接收器,可以接收两种类型的广播,第一个是自定义的动作,第二个是系统的,当WIFI状态改变。都是为了测试,随便添加了一个。

这种注册方式是常驻型,当应用程序关闭后(没有卸载前),如果有相应广播信息来,程序也会被系统调用自动运行。

第二种方式:在程序代码中动态注册

BroadcastReceiver receiver = new MyReceiver();IntentFilter filter = new IntentFilter();filter.addAction(Intent.ACTION_SCREEN_OFF);//这里添加系统广播,当屏幕关闭的时候发送filter.addAction(ACTION_INTENT_TEST);registerReceiver(receiver, filter);

这种注册方式不是常驻型,广播接收器跟随Activity的生命周期。注意在Activity结束前解除注册广播接收器

unregisterReceiver(receiver);

假设忘记解除注册,系统中也不会保留。即当有广播来,程序也不会处理。

转载于:https://www.cnblogs.com/and_he/archive/2012/03/01/2375880.html

Android广播(笔记)相关推荐

  1. Android学习笔记 88. Broadcast receivers 广播接收器

    Android学习笔记 Android 开发者基础知识 (Java) -- Google Developers 培训团队 文章目录 Android学习笔记 Android 开发者基础知识 (Java) ...

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

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

  3. Android学习笔记——广播机制

    Android广播机制 为了便于进行系统级别的消息通知,Android引入了一套广播消息机制. Android中的广播机制十分灵活,每个程序都可以对自己感兴趣的广播进行注册.程序只会接收自己所关心的广 ...

  4. Android广播机制:Broadcast

    转载:Android总结篇系列:Android广播机制 1.Android广播机制概述 Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广 ...

  5. Android开发笔记(序)写在前面的目录

    知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平.因此博主就想,入门的东西咱就不写了,人不能老停留在入 ...

  6. Android开发笔记(一百六十)休眠模式下的定时器控制

    定时器AlarmManager常常用于需要周期性处理的场合,比如闹钟提醒.任务轮询等等.并且定时器来源于系统服务,即使App已经不在运行了,也能收到定时器发出的广播而被唤醒.似此回光返照的神技,便遭到 ...

  7. Android开发笔记(一百四十三)任务调度JobScheduler

    任务调度 App除了通过屏幕向用户展示可交互的界面元素之外,还经常需要在后台做些背地里做的事情,比如说精密计算.文件下载.统计分析.数据导入.状态监控等等,这些用户看不到的事一般放在Service中处 ...

  8. Android开发笔记(一百一十七)app省电方略

    电源管理PowerManager PowerManager是Android的电源管理类,用于管理电源操作如睡眠.唤醒.重启以及调节屏幕亮度等等. PowerManager的对象从系统服务POWER_S ...

  9. Android开发笔记(一百一十一)聊天室中的Socket通信

    Socket通信 基本概念 对于程序开发来说,网络通信的基础就是Socket,但因为是基础,所以用起来不容易,今天我们就来谈谈Socket通信.计算机网络有个大名鼎鼎的TCP/IP协议,普通用户在电脑 ...

  10. Android开发笔记(一百零四)消息推送SDK

    推送的集成 常用概念 推送:从服务器把消息实时发到客户端app上,这就是推送,推送可用于发送系统通知.发送推荐信息.发送聊天消息等等. 别名:用于给移动设备取个好记的名字,比如电脑有计算机名,可以把别 ...

最新文章

  1. Instruments of Xcode
  2. java 微信转账_实现微信转账功能
  3. eclipse maven在哪里_Maven操作
  4. [ZJOI2015] 幻想乡战略游戏(树链剖分 + 线段树二分 + 带权重心)
  5. 使用fn函数控制页面显示内容
  6. c语言程序填空z=7,x=4,《C语言程序设计》复习题有答案
  7. 今天老师本来想讲另外一个题目, 但是由于大家不是很了解数组,因此写了一些数组让我们练习...
  8. 【15】淘宝sdk——入门实战之header.php制作(三)
  9. 关于spfile的一个难题
  10. ubuntu18.04编译Open Pose 1.7
  11. c语言程序设计电子科技大学,C语言程序设计
  12. 阿里AI天池大赛-贷款违约预测-基于CatBoost十折交叉验证
  13. 傲腾服务器硬盘,Intel P5800X傲腾硬盘实测:不愧是世界最强
  14. AI时代,陪孩子玩什么游戏?| 前Google资深工程师实战心法
  15. 小米ES Pro和X Pro对比有什么区别?哪个更值得入手
  16. 计算机学生如何创新,试论如何在计算机教育中培养学生的创新能力
  17. 钉钉发布会发了个“ / ”,还说这玩意能替我们上班?
  18. matlab设置图片的比例,Matlab 画图字体,字号的设定,图片大小和比例
  19. windows压缩包 无法在Linux上打开
  20. 虚拟主机和服务器有啥区别,虚拟主机和服务器的区别在哪?

热门文章

  1. Linux新建yaml文件,Spring Boot 装载自定义yml文件
  2. Spring中Singleton作用域和Prototype作用域
  3. OpenCV如何修改Mat中某像素(某通道的数值)
  4. php post aspx,PHP模拟POST aspx页面不成功
  5. php事务 面向对象,PHP面向对象之事务脚本模式(详解)
  6. Android多个音频源采集,android音频采集
  7. python numpy array中维度的区别 array.shape
  8. 九度OJ : 1004 Median
  9. 3-2:HTTP协议之URI(URL)和HTTP基本概念及其特征
  10. dmesg时间转换工具