正常情况下,静态注册广播使用如下方式:

<!-- 注册自定义静态广播接收器 --><receiver android:name=".StaticReceiver"><intent-filter><action android:name="com.bn.pp2.staticreceiver" /></intent-filter></receiver>

这样静态注册的广播,就算app的进程没有开启,或者app没有启动过。只要intentfilter匹配了com.bn.pp2.staticreceiver,就会执行StaticReceiver的onReceiver方法。


另外,还有一种静态注册的方法,使用静态内部类。

<!-- 注册自定义静态内部广播接收器 --><receiver android:name=".Outerclass$StaticInnerReceiver"><intent-filter><action android:name="com.bn.pp2.staticreceiver" /></intent-filter></receiver>
这里,需要注意$的使用。

但是,使用这种方式会带来一个问题:如果app的进程不存在,StaticInnerReceiver的onReceive根本不会被调用。


更多相关文章

  1. Android定时器实现的几种方法
  2. android service 之 Binder
  3. Missing styles. Is the correct theme chosen for this layout?
  4. Android(安卓)中Handler引起的内存泄露
  5. 《疯狂Android讲义》笔记整理
  6. Android(安卓)使用CMake 编译NDK
  7. 【CMake】CMake 引入 ( Android(安卓)NDK 构建脚本 | CMake 命令
  8. MobSF安装使用及过程中遇到的错误
  9. bindService

随机推荐

  1. Android使用回调接口
  2. 2020年20种最佳Android应用程序模板
  3. 反编译Android部署程序
  4. android UI开源项目
  5. Genymotion - 速度飞一般的Android虚拟机
  6. Android分类列表之RecyclerView-ItemDeco
  7. 从零学Android(十二)、Android中的图形和动
  8. Android下使用OpenCV
  9. Android与J2ME区别之我见(3)
  10. 2D翻转