1. 程式人生 > >Android學習(一)--安卓四大元件

Android學習(一)--安卓四大元件

 Android有四大元件,分別是Activity,Service,Content ProviderBroadcast Receiver

  首先說明Activity元件,開發一個應用程式不用到Activity是很難的,一個Activity通常就是一個獨立的視窗或螢幕,是應用與使用者完成互動的重要元件,通過呼叫Activity類中setContentView()方法設定展現Activity視窗的檢視,而檢視是由類View的子類表示的,如一下常用元件,TextViewButtonImageViewSurfaceView等,均為View的子類,因此檢視就是

Activity與使用者互動的介面。Android中的每一個Activity必須在AndroidManifest.xml配置檔案中進行宣告,否則系統不予以識別與執行。

  第二大元件是Service,即服務,一般運行於後臺,不與使用者進行互動,沒有自己的圖形介面,Service通常用於為其他元件提供後臺服務、執行耗時邏輯、執行需要長期執行的任務以及監控其他元件執行狀況。Service運行於主執行緒中,可能阻塞其他元件,可考慮開啟子執行緒執行耗時程式或將Service轉換成遠端Service

  第三大元件是Broadcast Receiver,即廣播。該元件不執行任何程式,僅僅是接收並響應廣播通知的一類元件,可對感興趣的外部事件做出相應,如當電

話呼入時,或網路資料可用時。大部分廣播通知是由系統產生的,如時區變換,語言設定,電池電量低等,但是應用程式同樣可以產生廣播通知,所有廣播繼承自BroadcastReceiver類,不包含任何使用者介面,但是可以通過啟動Activity或者NotificatinManager通知使用者。廣播接收器註冊分為程式動態註冊和AndroidManifest.xml進行靜態註冊,二者的區別在於,當用來進行動態註冊的Activity關閉後廣播失效,而靜態註冊無需擔心廣播接收器被關閉,只要裝置開啟,廣播開啟,哪怕APP並未開啟,廣播接收器也會對訂閱的廣播作出響應。

  最後,說明一下第四大元件

Content Provider,即內容提供者。該元件用於多程式之間的資料共享,一個應用程式將共享的資料集存入Content Prvider中,其他應用程式通過ContentResovler類從該內容提供者中獲取或者存入資料。