Android 四大组件

Activity(活动)

Android 应用程序中,一个 Activety 就相当于一个屏幕,主要用于和用户进行交互。一个应用程序可以包含许多 Activity。

Activety 之间通过 intent(简单的消息传递框架。使用 Intent,你可以在整个系统内广播消息或者给特定的 Activity 或者服务来执行你的行为意图。系统会决定那个(些)目标来执行适当的行为) 进行通讯。

Service(服务)

Android 中程序后台运行的解决方案,通常用于执行不需要与用户直接交互的任务(比如聊微信的同时播放音乐)。服务可以不依赖用户界面而运行,服务只依赖与创建服务的主进程,如果主进程被杀死,服务也会被杀死。

BroadCastReceiver(广播接收器)

Intent 广播的“消费者”。通过创建和注册一个 Broadcast Receiver,应用程序可以监听符合特定条件的广播的 Intent。Broadcast Receiver 会自动的启动你的 Android 应用程序去响应新来的 Intent。Broadcast Receiver 是事件驱动程序的理想手段。

Broadcast Receiver 不执行任何任务,仅仅是接受并响应广播通知的一类组件。大部分广播通知是由系统产生的,例如改变时区,电池电量低,用户选择了一幅图片或者用户改变了语言首选项。应用程序同样也可以发送广播通知,例如通知其他应用程序某些数据已经被下载到设备上可以使用。

Broadcast Receiver 不包含任何用户界面。然而它们可以启动一个 Activity 以响应接受到的信息,或者通过 NotificationManager 通知用户。

一个应用程序可以包含任意数量的 Broadcase Reveiver 来响应它认为很重要的通知。所有的 Broadcast Receiver 都扩展自类 BroadcastReceiver。

ContnetProvider(内容提供)

内容提供者主要用于在不同应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访问数据的安全性。只有需要在多个应用程序间共享数据时才需要内容提供者。例如:通讯录数据被多个应用程序使用,且必须存储在一个内容提供者中。它的好处:统一数据访问方式。

[越努力,越幸运!]