Android四大组件(进行中):
Activity:是Android应用中负责与用户交互的组件——类似于Swing编程中的JFrame控件。
Activity为Android应用提供可视化用户界面,如果该Android应用需要多个用户界面,那么这个Android应用将会包含多个Activity,多个Activity组成Activity组成Activity栈。
Service:Service与Activity的地位是并列的,他也代表一个单独的android组件,Service与Activity的区别在于:Service通常位于后台运行,他一般不需要用户交互,因此Service组件没有用户界面。Service组件通常用于为其他组件提供后台服务或监控其他组件运行状态。
BroadcastReceiver:是Android应用中另一个重要的组件,BroadcastReceiver代表广播消息接收器。BroadcastReceiver非常类似与事件编程中的**器。与普通事件**器不同的是:普通事件**器**的事件源是程序中的对象;而BroadcastReceiver**的事件源是Android应用中的其他组件。
当其他组件通过sendBroadcast()、sentStickyBroadcast()或sendOrderedBroadcast()方式发送广播时,若该BroadcastReceiver也对该消息“感兴趣”,BroadcastReceiver的onReceiver()方法将被触发,接收相应的广播消息。
广播分为两种类型:标准广播和有序广播
- 标准广播
标准广播是一种完全异步执行的广播,在广播发出后所有的广播接收器会在同一时间接收到这条广播,之间没有先后顺序,效率比较高,且无法被截断 - 有序广播
有序广播是一种同步执行的广播,在广播发出后同一时刻只有一个广播接收器能够接收到, 优先级高的广播接收器会优先接收,当优先级高的广播接收器的 onReceiver() 方法运行结束后,广播才会继续传递,且前面的广播接收器可以选择截断广播,这样后面的广播接收器就无法接收到这条广播了。
- 静态注册
静态注册是在AndroidManifest.xml文件中注册,例如。。。。。

- 动态注册


ContentProvider:对于Android应用而言,组件必须相互独立,如果这些Android应用之间需要实现实时的数据交换。而且ContentProvider是类似于数据库表的方式将数据暴露,也就是说ContentProvider就像一个“数据库”