Android - 应用组件
应用组件是 Android 应用程序的基本构建模块。这些组件通过应用程序清单文件 AndroidManifest.xml 进行松耦合,该文件描述了应用程序的每个组件及其交互方式。
Android 应用程序中可以使用以下四种主要组件 −
| 序号 | 组件 & 描述 |
|---|---|
| 1 |
Activities 它们控制 UI 并处理用户与智能手机屏幕的交互。 |
| 2 | Services 它们处理与应用程序相关的后台任务。 |
| 3 |
Broadcast Receivers 它们处理 Android OS 与应用程序之间的通信。 |
| 4 |
Content Providers 它们处理数据和数据库管理问题。 |
Activities
一个 activity 代表一个带有用户界面的单一屏幕,简而言之,Activity 在屏幕上执行操作。例如,一个电子邮件应用程序可能有一个 activity 显示新邮件列表,另一个 activity 用于撰写邮件,还有一个 activity 用于阅读邮件。如果应用程序有多个 activity,则其中一个应被标记为应用程序启动时呈现的 activity。
一个 activity 以 Activity 类的子类形式实现,如下所示 −
public class MainActivity extends Activity {
}
Services
Service 是一种在后台运行以执行长时间操作的组件。例如,service 可能在用户使用其他应用程序时在后台播放音乐,或者在不阻塞用户与 activity 交互的情况下从网络获取数据。
一个 service 以 Service 类的子类形式实现,如下所示 −
public class MyService extends Service {
}
Broadcast Receivers
Broadcast Receivers 简单地响应来自其他应用程序或系统的广播消息。例如,应用程序也可以发起广播,以通知其他应用程序某些数据已下载到设备并可供使用,因此这个 broadcast receiver 将拦截此通信并启动适当的操作。
Broadcast receiver 以 BroadcastReceiver 类的子类形式实现,每个消息都以 Intent 对象的形式广播。
public class MyReceiver extends BroadcastReceiver {
public void onReceive(context,intent){}
}
Content Providers
Content provider 组件应请求向其他应用程序提供一个应用程序的数据。此类请求由 ContentResolver 类的方 法处理。数据可能存储在文件系统中、数据库中或其他地方。
Content provider 以 ContentProvider 类的子类形式实现,并且必须实现一组标准的 API,以使其他应用程序能够执行事务。
public class MyContentProvider extends ContentProvider {
public void onCreate(){}
}
我们将在单独的章节中详细介绍这些标签,同时涵盖应用组件。
其他组件
还有一些额外的组件将用于构建上述实体、它们的逻辑以及它们之间的连接。这些组件包括 −
| 序号 | 组件 & 描述 |
|---|---|
| 1 | Fragments 表示 Activity 中的用户界面部分。 |
| 2 |
Views 绘制在屏幕上的 UI 元素,包括按钮、列表表单等。 |
| 3 |
Layouts 控制屏幕格式和视图外观的视图层次结构。 |
| 4 | Intents 将组件连接在一起的消息。 |
| 5 | Resources 外部元素,如字符串、常量和可绘制图片。 |
| 6 |
Manifest 应用程序的配置文件。 |