Android 内置了很多系统级别的广播,我们可以在应用程序里面通过监听这些广播来得到各种系统的状态信息。

  • 开机广播。这个动作被广播一次(只有一次)。
    Intent.ACTION_BOOT_COMPLETED;
  • 重启设备时的广播
    Intent.ACTION_REBOOT;
  • 屏幕被关闭之后的广播
    Intent.ACTION_SCREEN_OFF;
  • 屏幕被打开之后的广播
    Intent.ACTION_SCREEN_ON;
  • 插上外部电源时发出的广播
    Intent.ACTION_POWER_CONNECTED;
  • 已断开外部电源连接时发出的广播
    Intent.ACTION_POWER_DISCONNECTED;
  • 表示电池电量低
    Intent.ACTION_BATTERY_LOW;
  • 表示电池电量充足,即从电池电量低变化到饱满时会发出广播
    Intent.ACTION_BATTERY_OKAY;
  • 充电状态,只能通过Context.registerReceiver()注册
    Intent.ACTION_BATTERY_CHANGED;
  • 关闭或打开飞行模式时的广播
    Intent.ACTION_AIRPLANE_MODE_CHANGED;
  • 设备墙纸已改变时发出的广播
    Intent.ACTION_WALLPAPER_CHANGED;
  • 设备日期发生改变时会发出此广播
    Intent.ACTION_DATE_CHANGED
  • 按下照相时的拍照按键(硬件按键)时发出的广播
    Intent.ACTION_CAMERA_BUTTON;
  • 当屏幕超时进行锁屏时,当用户按下电源按钮,长按或短按(不管有没跳出话框)
    Intent.ACTION_CLOSE_SYSTEM_DIALOGS;
  • 设备当前设置被改变时发出的广播(包括的改变:界面语言,设备方向,等,请参考Configuration.java)
    Intent.ACTION_CONFIGURATION_CHANGED;
  • 设备内存不足时发出的广播,此广播只能由系统使用,其它APP不可用
    Intent.ACTION_DEVICE_STORAGE_LOW;
  • 设备内存从不足到充足时发出的广播,此广播只能由系统使用,其它APP不可用
    Intent.ACTION_DEVICE_STORAGE_OK;
  • 关闭系统时发出的广播
    Intent.ACTION_SHUTDOWN;
  • 时区发生改变时发出的广播
    Intent.ACTION_TIMEZONE_CHANGED;
  • 时间被设置时发出的广播
    Intent.ACTION_TIME_CHANGED;
  • 移动APP完成之后,发出的广播(移动是指:APP2SD)
    Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE;
  • 正在移动APP时,发出的广播(移动是指:APP2SD)
    Intent.ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE;
  • Gtalk已建立连接时发出的广播
    Intent.ACTION_GTALK_SERVICE_CONNECTED;
  • Gtalk已断开连接时发出的广播
    Intent.ACTION_GTALK_SERVICE_DISCONNECTED;
  • 在耳机口上插入耳机时发出的广播
    Intent.ACTION_HEADSET_PLUG;
  • 改变输入法时发出的广播
    Intent.ACTION_INPUT_METHOD_CHANGED;
  • 设备当前区域设置已更改时发出的广播
    Intent.ACTION_LOCALE_CHANGED;
  • 广播:当前时间改变,每分钟都发送,只能通过Context.registerReceiver()方法来注册
    Intent.ACTION_TIME_TICK;
  • 一个用户ID已经从系统中移除发出的广播
    Intent.ACTION_UID_REMOVED;
  • 设备已进入USB大容量储存状态时发出的广播
    Intent.ACTION_UMS_CONNECTED;
  • 设备已从USB大容量储存状态转为正常状态时发出的广播
    Intent.ACTION_UMS_DISCONNECTED;
  • 表示用户和包管理所承认的低内存状态通知应该开始。
    Intent.ACTION_MANAGE_PACKAGE_STORAGE;
  • 未正确移除SD卡(正确移除SD卡的方法:设置--SD卡和设备内存--卸载SD卡),但已把SD卡取出来时发出的广播 ,扩展介质(扩展卡)已经从 SD 卡插槽拔出,但是挂载点 (mount point) 还没解除 (unmount)
    Intent.ACTION_MEDIA_BAD_REMOVAL;
  • 插入SD卡并且已正确安装(识别)时发出的广播, 扩展介质被插入,而且已经被挂载。
    Intent.ACTION_MEDIA_MOUNTED;
  • 按下"Media Button" 按键时发出的广播,假如有"Media Button" 按键的话(硬件按键)
    Intent.ACTION_MEDIA_BUTTON;
  • 插入外部储存装置,比如SD卡时,系统会检验SD卡,此时发出的广播?
    Intent.ACTION_MEDIA_CHECKING;
  • 已拔掉外部大容量储存设备发出的广播(比如SD卡,或移动硬盘),不管有没有正确卸载都会发出此广播, 用户想要移除扩展介质(拔掉扩展卡)。
    Intent.ACTION_MEDIA_EJECT;
  • 拓展介质存在,但使用不兼容FS(或为空)的路径安装点检查介质包含在Intent.mData领域。
    Intent.ACTION_MEDIA_NOFS;
  • 外部储存设备已被移除,不管有没正确卸载,都会发出此广播, 扩展介质被移除。
    Intent.ACTION_MEDIA_REMOVED;
  • 广播:已经扫描完介质的一个目录
    Intent.ACTION_MEDIA_SCANNER_FINISHED;
  • 请求媒体扫描仪扫描文件并将其添加到媒体数据库。
    Intent.ACTION_MEDIA_SCANNER_SCAN_FILE;
  • 广播:开始扫描介质的一个目录
    Intent.ACTION_MEDIA_SCANNER_STARTED;
  • 广播:扩展介质存在,但是还没有被挂载 (mount)
    Intent.ACTION_MEDIA_UNMOUNTED
  • 广播:扩展介质的挂载被解除 (unmount),因为它已经作为 USB 大容量存储被共享。
    Intent.ACTION_MEDIA_SHARED;
  • 成功的安装APK之后,设备上新安装了一个应用程序包。
    Intent.ACTION_PACKAGE_ADDED;
  • 一个已存在的应用程序包已经改变,包括包名
    Intent.ACTION_PACKAGE_CHANGED;
  • 清除一个应用程序的数据时发出的广播(在设置--应用管理--选中某个应用,之后点清除数据时)
    Intent.ACTION_PACKAGE_DATA_CLEARED;
  • 触发一个下载并且完成安装时发出的广播,比如在电子市场里下载应用
    Intent.ACTION_PACKAGE_INSTALL;
  • 成功的删除某个APK之后发出的广播, 一个已存在的应用程序包已经从设备上移除,包括包名(正在被安装的包程序不能接收到这个广播)
    Intent.ACTION_PACKAGE_REMOVED;
  • 替换一个现有的安装包时发出的广播(不管现在安装的APP比之前的新还是旧,都会发出此广播)
    Intent.ACTION_PACKAGE_REPLACED;
  • 用户重新开始一个包,包的所有进程将被杀死,所有与其联系的运行时间状态应该被移除,包括包名(重新开始包程序不能接收到这个广播)
    Intent.ACTION_PACKAGE_RESTARTED;

Android源码中常用的系统广播相关推荐

  1. android源码中常用的Rect方法

    inset dirty.inset(-1, -1); 缩小还是扩大矩形.如果为正值,则是缩,反之就是扩. dx:左边及右边 dy:上边及下边 offset dirty.offset(0, -mCurS ...

  2. android源码使用方法,android源码中使用到的设计模式(创建型)

    1.单例模式 1.1定义 确保某个类只有一个实例,而且自行实例化并向整个系统提供者个实例. 1.2单例的形式 饿汉模式:第一次就加载,用空间换时间. public class SingleTon { ...

  3. android底层截图,Android源码中屏幕截图的实现

    Android手机一般都自带有手机屏幕截图的功能:在手机任何界面(当然手机要是开机点亮状态),通过按组合键,屏幕闪一下,然后咔嚓一声,截图的照片会保存到当前手机的图库中,真是一个不错的功能! 以我手头 ...

  4. 【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | DexFile 构造函数及相关调用函数 | Android 源码中查找 native 函数 )

    文章目录 一.DexFile 构造函数 二.DexFile.openInMemoryDexFile 函数 三.Android 源码中查找 native 函数 一.DexFile 构造函数 上一篇博客 ...

  5. android 源码中的单例,Android源码中的一种单例实现

    单例模式的实现方式有懒汉,饿汉,双重校验锁,枚举,内部类等等,写法就不全部列举了.Android源码中有一个单例辅助类/frameworks/base/core/java/android/util/S ...

  6. Android源码中的FLAG为何使用16进制

    1.在阅读源码的时候经常发现有一些标志属性使用一些位操作来判断是否具有该标志,增加标志或者去除标志. 比如View.java中的 /*** This view does not want keystr ...

  7. android单例模式代码,设计模式(一):Android 源码中的单例模式

    设计模式(一):Android 源码中的单例模式 2020-08-17 22:51 阅读数 57 <>什么是单例模式? 单例模式(Singleton) 是最常见也最简单的设计模式,它的目的 ...

  8. android 静态工厂方法,Android 源码中的静态工厂方法

    我们知道工厂模式有三兄弟,通常我们说的工厂模式指的是工厂方法模式,它的应用频率最高.本篇博客分享的简单工厂模式是工厂方法模式的"小弟",确切的来讲它不属于设计模式,而是一种方法.此 ...

  9. 帝国cms cj1.php,帝国cms源码中常用函数所在位置

    帝国cms源码中常用函数所在位置 发布时间:2014-03-28 15:00:26   作者:佚名   我要评论 帝国cms常用函数所在位置归总,使用帝国cms的朋友可以收藏下 帝国cms常用函数所在 ...

最新文章

  1. iframe内联元素有白边原因_Selenium无法定位元素的几种解决方案
  2. vue-cli中的webpack配置
  3. 深度学习(神经网络) —— BP神经网络原理推导及python实现
  4. 算法的威力:法国人用台式机打破由超级计算机创造的圆周率运算世界记录
  5. MySql like 查询 变向写法(不用like 完成like查询)
  6. 转载:磁盘分区,一篇很好的文章
  7. Angular Universal 学习笔记
  8. 存储器间接寻址方式_8086中的数据存储器寻址模式
  9. Java Integer类toString()方法与示例
  10. 我一直在想500年前我是不是孙悟空,但是事实上我却是至尊宝。这就是宿命(capsicum.heorhome.net)
  11. python cos函数_Python Tensorflow cos()用法及代码示例
  12. 高中二年级会考计算机考试试题,高中二年级学考是怎么回事 和会考的区别是什么...
  13. Json string value cannot have line breaks(解决方法)
  14. 【LeetCode】【字符串】题号:*481. 神奇字符串
  15. 190418每日一句
  16. 实变函数自制笔记1:前言
  17. deepin深度系统下安装QQ音乐
  18. 联通应用商店一周年硕果累累
  19. python基础之logging模块
  20. 290万人考研:所有的不平凡,从不认命开始

热门文章

  1. Android中如何查看内存(下)
  2. 《干货集锦》——前端大牛 Addy Osmani 的15个精彩PPT
  3. document.all用法
  4. asp 后台批量管理程序
  5. 中小型研发团队架构落地实践18篇,含案例、代码
  6. Deep Learning快速学习方法
  7. Word2Vec算法详解(CBOW和skip-gram算法详解)
  8. q函数表格怎么看_会计表格函数玩不会?送你会计表格函数公式大全,财务人都在用...
  9. Jquery第二章appendTo方法到方法的使用练习第二节
  10. mybatis if where标签怎么使用?