Android應用程式由一些零散的有聯絡的組件組成,通過一個工程manifest綁定在一起。在manifest中,描述了每一個組件以及組件的作用。
這裡有6個組件,它們是Android應用程式的基石:
❑ Activities(活動)
應用程式的顯示層。每一個畫面對應於你的應用程式,將會是Activity類的擴充。Activity使用Views去構建UI來顯示資訊和響應使用者的行為。就案頭開發而言,一個Activity相當於一張Form。你在這章中將會學習到更多關於Activities。
❑ Services(服務)
應用程式中不可見的“工人”。 Service組件運行時不可見,但它負責更新的資料來源和可見的Activity,以及觸發通知。它們常用來執行一些需要持續啟動並執行處理,當你的Activity已經不處於啟用狀態或不可見。你將在第8章學習怎樣建立Service。
❑ Content(內容)
提供共用的資料存放區。Content Provider(內容提供器)用來管理和共用應用程式的資料庫。在應用程式間,Content Provider是共用資料的首選方式。這意味著,你可以配置自己的Content Provider去存取其他的應用程式或者通過其他應用程式暴露的Content Provider去存取它們的資料。Android裝置本身包含了幾個Content Provider來訪問像連絡人資訊等有用的資料庫。你將在第6章學習怎樣建立和使用Content Provider。
❑ Intents(意圖)
簡單的訊息傳遞架構。使用Intent,你可以在整個系統內廣播訊息或者給特定的Activity或者服務來執行你的行為意圖。系統會決定那個(些)目標來執行適當的行為。
❑ Broadcast Receivers(廣播接收器)
Intent廣播的“消費者”。通過建立和註冊一個Broadcast Receiver,應用程式可以監聽符合特定條件的廣播的Intent。Broadcast Receiver 會自動的啟動你的應用程式去響應新來的Intent。Broadcast Receiver是事件驅動程式的理想手段。
❑ Notifications(通知)
使用者通知的架構。Notification用來在不需要焦點或不中斷它們當前Activity的情況下提示使用者。它們是Service或Broadcast Receiver獲得使用者注意的首選方式。例如,當裝置收到文本資訊或外部來電時,它通過閃光,發聲,顯示表徵圖或顯示對話方塊資訊來提醒你。在第8章裡,你可以使用Notification來觸發這些事件。
解除應用程式組件間的依賴關係,你可以和其他應用程式共用和交換一些個別的組件單元,例如Content Provider或Service——你的和其他的都是第三方的。