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