1.静态注册
使用Android studio快捷方式创建BroadcastReceiver,自动会在AndroidManifest.xml中注册,然后就可以在创建的类中的onReceiver()方法中写要处理的逻辑;静态注册一般用于像开机之后就要收到广播的场景,不依赖于程序必须启动;
2.动态注册
在活动中创建一个内部类(该类就是自定义广播接收器),这个类继承BroadcastReceiver,然后再该类中重写onReceiver()方法。最后在Activity中调用registerReceiver(),把刚刚定义好的内部类对象作为参数传进该方法,除此之外,还要同时传入另一个参数IntentFilter对象,通过使用IntentFilter对象来添加相应的action,从而让广播接收器知道自己监听的是什么广播,如果匹配则进行接收。把这两个参数传到registerReceiver()方法中,这样就实现了注册,而注销广播接收器则调用unregisterReceiver()方法,只要传一个参数即可,该参数就是广播接收器对象。动态注册比较灵活,可以控制注册与注销,但是要依赖程序启动后才能接收到广播。一般会用于跟程序有关的通知功能,即当收到广播后就触发的功能。
版权声明:本文为liuhaikang原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。