Android架構

Android操作系統是一堆軟體組件,大致分為五個部分,四個主要的層次,如下圖所示。

Linux內核

底層是Linux - Linux 3.6,大約有115個補丁。 這提供了設備硬體之間的抽象級別,它包含了所有必要的硬體驅動程式,如相機,鍵盤,顯示器等。此外,內核還處理Linux真正擅長的所有事情,例如網路連接和大量設備驅動程式 ,這消除了與外設硬體介面的痛苦。

類庫

在Linux內核之上,有一套庫,包括開源Web流覽器引擎WebKit,眾所周知的庫libc,SQLite資料庫,它是存儲和共用應用程式數據的有用存儲庫,播放和記錄音頻和視頻的庫,SSL 負責互聯網安全的類庫。

Android庫

這個類別包含那些特定於Android開發的基於Java的庫。 此類庫中的示例包括除了便於用戶介面構建,圖形繪製和數據庫訪問的應用程式框架庫之外的應用程式框架庫。 Android開發人員可以使用的一些關鍵核心Android庫的總結如下 -

  • android.app - 提供對應用程式模型的訪問,是所有Android應用程式的基石。
  • android.content - 便於應用程式和應用程式組件之間的內容訪問,發佈和消息傳遞。
  • android.database - 用於訪問內容提供者發佈的數據,包括SQLite資料庫管理類。
  • android.opengl - OpenGL ES 3D圖形渲染API的Java介面。
  • android.os - 為應用程式提供對標準操作系統服務的訪問,包括消息,系統服務和進程間通信。
  • android.text - 用於渲染和操縱設備顯示器上的文本。
  • android.view - 應用程式用戶介面的基本構建塊。
  • android.widget - 豐富的預建用戶介面組件,如按鈕,標籤,列表視圖,佈局管理器,單選按鈕等。
  • android.webkit - 一組旨在允許將web流覽功能內置到應用程式中的類。

在Android運行時覆蓋了基於Java的核心庫之後,現在是把注意力轉向Android軟體棧這一層包含的基於C/C++的庫。

Android運行時

這是架構的第三部分,可以從底部的第二層獲得。 本節提供了一個名為Dalvik虛擬機 的關鍵組件,它是一種專為Android設計和優化的Java虛擬機。

Dalvik VM利用Linux內核特性,如記憶體管理和多線程,這在Java語言中是固有的。 Dalvik虛擬機使每個Android應用程式都能在自己的進程中運行,並擁有自己的Dalvik虛擬機實例。

Android運行時還提供了一組核心庫,使Android應用程式開發人員可以使用標準Java編程語言編寫Android應用程式。

應用框架

應用程式框架層以Java類的形式向應用程式提供了許多更高級別的服務。 應用程式開發人員可以在他們的應用程式中使用這些服務。

Android框架包含以下關鍵服務 -

  • 活動管理器 - 控制應用程式生命週期和活動堆疊的所有方面。
  • 內容提供者 - 允許應用程式發佈和與其他應用程式共用數據。
  • 資源管理器 - 提供對非代碼嵌入式資源(如字串,顏色設置和用戶介面佈局)的訪問。
  • 通知管理器 - 允許應用程式向用戶顯示警報和通知。
  • 視圖系統 - 用於創建應用程式用戶介面的一組可擴展的視圖。

應用程式

在頂層是所有的Android應用程式。編寫的應用程式來安裝在這個圖層上。 這樣的應用程式的例子是聯繫人,流覽器,遊戲等。


上一篇: Android MediaPlayer(多媒體播放) 下一篇: Android應用組件