Android 简明教程

Android - Application Components

应用程序组件是 Android 应用程序的基本构建块。这些组件通过应用程序清单文件 AndroidManifest.xml 松散耦合,该文件描述应用程序的每个组件以及它们如何交互。

Android 应用程序中可以使用的主要组件有以下四种:

Sr.No

Components & Description

1

Activities 它们决定 UI 并处理与智能手机屏幕的用户交互。

2

Services 它们处理与应用程序相关的后台处理。

3

Broadcast Receivers 它们处理 Android 操作系统与应用程序之间的通信。

4

Content Providers 它们处理数据和数据库管理问题。

Activities

一个 Activity 表示一个具有用户界面的单一屏幕,简而言之,Activity 在屏幕上执行操作。例如,电子邮件应用程序可能有一个 Activity 显示新电子邮件的列表,另一个 Activity 用于撰写电子邮件,另一个 Activity 用于阅读电子邮件。如果一个应用程序有多个 Activity,那么其中一个应该被标记为应用程序启动时显示的 Activity。

一个 Activity 作为一个 Activity 类的子类实现,如下所示:

public class MainActivity extends Activity {
}

Services

一个服务是一个在后台运行的组件,用于执行长期运行的操作。例如,一个服务可以在用户使用另一个应用程序时在后台播放音乐,或者可以在不阻止用户与 Activity 进行交互的情况下通过网络获取数据。

一个服务作为一个 Service 类的子类实现,如下所示:

public class MyService extends Service {
}

Broadcast Receivers

广播接收器仅仅响应来自其他应用程序或系统的广播消息。例如,应用程序还可以启动广播,让其他应用程序知道一些数据已下载到设备上并且可供它们使用,因此这个广播接收器将会拦截此通信并启动适当的操作。

一个广播接收器作为一个 BroadcastReceiver 类的子类实现,并且每条消息都作为 Intent 对象广播。

public class MyReceiver  extends  BroadcastReceiver {
   public void onReceive(context,intent){}
}

Content Providers

一个内容提供程序组件根据请求从一个应用程序为其他应用程序提供数据。这些请求由 ContentResolver 类的各个方法处理。数据可以存储在文件系统、数据库或其他完全不同的地方。

一个内容提供程序作为一个 ContentProvider 类的子类实现,并且必须实现一套标准的 API,以便其他应用程序执行事务。

public class MyContentProvider extends  ContentProvider {
   public void onCreate(){}
}

我们将在各个章节中介绍应用程序组件时详细了解这些标记。

Additional Components

有另外一些组件用于构建上述实体,以及它们之间的逻辑和连接。这些组件为:

S.No

Components & Description

1

Fragments 表示 Activity 中用户界面的一个部分。

2

Views 在屏幕上绘制的 UI 元素,包括按钮、列表和表单等。

3

Layouts 控制屏幕格式和视图外观的视图层次结构。

4

Intents Messages wiring components together.

5

Resources 外部元素,例如字符串、常量和可绘制的图片。

6

Manifest 应用程序配置文件。