Intent 启动应用程序内部activity,还可以启动其他应用程序activity,以及发送广播动作,Broadcase action和activity action一样,既可以有系统负责广播,也可以有应用程序自己发送广播,当系统接收到短信等会像整个系统发送响应的broadcase Action,如果应用程序接受到这些广播就会做响应的处理,接下来描述在应用程序中接收广播和在应用程序中发送广播
广播分为动态注册和静态注册,他们的区别:
动态注册的广播会受Activity的生命周期的影响, 当Activity销毁的时候,广播就失效了。
静态注册的广播,即使Activity销毁了,仍然可以收到广播,即使杀死进程,仍然可以收到广播
静态注册广播:
既在minifest.xml中注册
动态注册广播:
既在代码中注册广播,同时需要在 onDestroy方法中注销广播,否则有内存泄漏的风险
接收广播
1,编写继承android.content.BroadcaseReceive的类,并实现onReceive方法,如果应用程序接收到广播一定会走这个方法
2.在AndroidManifest.xml中使用标签来指定第一步中编写的接收系统广播的类可以接受哪个Broadcase action
例:开机可自动运行程序广播
在自己的程序中发送广播
例:发送消息广播
监听电量广播
监听短信广播