Android 應用程式組件
應用程式組件是一個Android應用程式的基本構建塊。這些組件由應用清單檔松耦合的組織。AndroidManifest.xml描述了應用程式的每個組件,以及他們如何交互。
以下是可以在Android應用程式中使用的四個主要組件。
組件 | 描述 |
---|---|
Activities | 描述UI,並且處理用戶與機器螢幕的交互。 |
Services | 處理與應用程式關聯的後臺操作。 |
Broadcast Receivers | 處理Android操作系統和應用程式之間的通信。 |
Content Providers | 處理數據和數據庫管理方面的問題。 |
Activities
一個活動標識一個具有用戶介面的單一螢幕。舉個例子,一個郵件應用程式可以包含一個活動用於顯示新郵件列表,另一個活動用來編寫郵件,再一個活動來閱讀郵件。當應用程式擁有多於一個活動,其中的一個會被標記為當應用程式啟動的時候顯示。
一個活動是Activity類的一個子類,如下所示:
public class MainActivity extends Activity { }
Services
服務是運行在後臺,執行長時間操作的組件。舉個例子,服務可以是用戶在使用不同的程式時在後臺播放音樂,或者在活動中通過網路獲取數據但不阻塞用戶交互。
一個服務是Service類的子類,如下所示:
public class MyService extends Service { }
Broadcast Receivers
廣播接收器簡單地回應從其他應用程式或者系統發來的廣播消息。舉個例子,應用程式可以發起廣播來讓其他應用程式知道一些數據已經被下載到設備,並且可以供他們使用。因此廣播接收器會攔截這些通信並採取適當的行動。
廣播接收器是BroadcastReceiver類的一個子類,每個消息以Intent對象的形式來廣播。
public class MyReceiver extends BroadcastReceiver { }
Content Providers
內容提供者組件通過請求從一個應用程式到另一個應用程式提供數據。這些請求由ContentResolver類的方法來處理。這些數據可以是存儲在檔系統、資料庫或者其他其他地方。
內容提供者是ContentProvider類的子類,並實現一套標準的API,以便其他應用程式來執行事務。
public class MyContentProvider extends ContentProvider { }
我們將在獨立的章節中通過這些標籤的細節來涵蓋應用程式組件。
附件組件
有一些附件的組件用於以上提到的實體、他們之間邏輯、及他們之間連線的構造。這些組件如下:
組件 | 描述 |
---|---|
Fragments | 代表活動中的一個行為或者一部分用戶介面。 |
Views | 繪製在螢幕上的UI元素,包括按鈕,列表等。 |
Layouts | 控制螢幕格式,展示視圖外觀的View的繼承。 |
Intents | 組件間的消息連線。 |
Resources | 外部元素,例如字串資源、常量資源及圖片資源等。 |
Manifest | 應用程式的配置檔。 |