Android應用程式組件

來源:互聯網
上載者:User

標籤:

Android 應用程式組件主要類型有:活動(Activity) 服務(Service)廣播接收者(BroadCast Receiver) 內容提供者(Content Provider)  意圖(intent) 小工具(Widget)通知(notification)

1.活動:

        應用程式的展示層,我使用者展示介面。一個Activity通常展現一個可視化的使用者介面。一個應用程式可以包含一個或多個Activity。通常每個應用程式運行後都會啟動一個Activity展現出第一個介面,在當前展現給使用者的Activity中啟動一個新的Activity或調用其他應用程式的Activity,實現從一個介面跳轉到另外一個介面。

2.服務:

     服務在後台運行,沒有展現出使用者介面。它們可以為前台的Activity提供資料來源更新,並觸發通知。例如,使用者處理其他事情的時候可以啟動一個Service播放背景音樂,或者啟動郵件用戶端的一個Service通過間斷性串連郵件伺服器下載新的郵件。

    Service的另外一個重要的應用就是通過AIDL(Android Interface Definition Language  Android介面定義語言)實現進程間的通訊。例如:在某一應用程式中,其他應用程式組件可以直接與該應用程式後台啟動並執行Service進行互動;另一方面,多個應用程式通過Service,可以在保證進程安全的前提下,實現它們之間的通訊。

3.內容提供者

   內容提供者是一種應用間資料共用的機制,提供了多個應用程式共用儲存資料的方式,相當於一種跨應用程式的資料操作,一個應用程式可以允許其他應用程式通過ContentProvider對其SQL資料、映像、聲音或其他資料類型進行增、刪、改、查等操作。ContentProvider為資料進行操作提供了統一的介面,為應用程式提供了四個介面函數:insert 、update及query,content Provider屏蔽了資料操作的具體實現細節,應用程式只需要通過ContentProvider調用相應介面函數即可完成操作,這種方式大大簡化了跨應用程式的資料操作。

4.廣播接收者

   廣播接收者不執行任何任務。每個Broadcast  Receiver都會接收系統或應用程式產生的廣播通知,並對廣播通知做出響應。很多事情都可能導致體統廣播,例如手機所在時區發生變化、電池電量低、使用者改變系統語言設定等。應用程式同樣也可以發送廣播通知,例如通知其他應用程式某些資料已經下載完畢。

5.意圖

    意圖的作用是在組件之間傳遞資訊和協調工作。Android彼此之間獨立的應用組件需要互相調用,協調工作,最終整合成一個真正的Android應用。組件之間的協調工作主要由intent完成,它起到Activity 、Content provider 、Service之間聯絡的紐帶作用。一個intent包含了一次的操作資訊,比如需要的動作,該動作相關的資料以及Android系統所需要的資訊。 Android根據此Intent提供的資訊進行描述,負責找到滿足這些資訊的組件,將intent傳遞給該組件,並完成組件的調用。因此Intent在這裡起著一個媒體中介的作用,專門提供組件互相調用的想換資訊,實現調用者與被調用這之間的聯絡。

  

       

Android應用程式組件

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.