應用程式組件是Android應用程式的基本構建塊。 這些組件通過應用程式清單檔AndroidManifest.xml鬆散耦合,該檔描述應用程式的每個組件以及它們如何交互。
在Android應用程式中可以使用以下四個主要組件:
| 編號 | 組件 | 描述 |
|---|---|---|
| 1 | Activities |
它們決定了用戶介面和處理用戶交互的智能手機螢幕。 |
| 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)
廣播接收器僅回應來自其他應用程式或系統的廣播消息。 例如,應用程式也可以啟動廣播,讓其他應用程式知道某些數據已經下載到設備中,並可供其使用,因此這是廣播接收方將攔截此通信並將啟動適當的操作。
廣播接收器作為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(){}
}
我們將詳細介紹這些標籤,同時覆蓋各個章節中的應用組件。
其他組件
在構建上述實體時,還會使用其他組件,它們的邏輯和它們之間的連線。 這些組件是 -
| 編號 | 組件 | 描述 |
|---|---|---|
| 1 | Fragments |
表示Activity中的用戶介面的一部分。 |
| 2 | Views |
在螢幕上繪製的UI元素,包括按鈕,列表形式等 |
| 3 | Layouts |
查看控制螢幕格式和視圖外觀的層次結構。 |
| 4 | Intents |
消息連接組件在一起。 |
| 5 | Resources |
外部元素,如字串,常量和可繪製圖片。 |
| 6 | Manifest |
應用程式的配置檔。 |
