1. 程式人生 > >Android應用程式執行機制

Android應用程式執行機制

1、應用程式的系統架構

      Android平臺由  應用程式、應用程式框架、Android執行時、系統庫以及底層Linux核心構成,

1.1  應用程式框架

       Android應用程式框架是開發 Android應用的基礎,開發者在開發時大部分時間在呼叫這一層。Android應用程式框架包含 活動管理器(activity manager)、視窗管理器(window manager)、內容提供者(content providers)、檢視系統(view system)、包管理器(package manager)、電話管理器(telephony manager)、位置管理器(location manager)、資源管理器(resource manager)以及通知管理器(notification manager)等;

1.2 Android runtime

   Android執行時包括 核心庫(Core libraries)以及 Dalvik Virtual Machine;

   ·核心庫主要包括兩部分,一部分來自於JavaSE中的核心Java部分,如集合框架、多執行緒等,另一部分由Android核心庫如android.os  以及 android.media等組成。

   ·Dalvik 虛擬機器是一種基於暫存器的Java虛擬機器,主要依靠轉換工具dx將Java位元組碼轉換為dex格式,基於暫存器的Java虛擬機器的優點是所需資源相對較少,同時使用硬體實現虛擬機器也比較容易。

 每個Android應用程式都有一個自己特有的程序,每個應用程式都是使用一個自己特有的Dalvik虛擬機器。

1.3 系統庫

     Android的系統函式庫(Libraries)是應用程式框架的支撐

    ·surface manager 管理對顯示子系統的訪問,並且負責將不同應用程式2D以及3D繪製的結果進行顯示合成

    ·Media Framework 可以方便的播放以及錄製多種常見格式的影音

    ·SQLite 是內嵌到Android系統的一套輕量級關係資料庫引擎

    ·OpenGL ES:實現3D繪圖函式庫

    ·FreeType  負責點陣字型以及向量字型的繪圖顯示

    ·WebKit 方便開發人員HTTP相關功能的開發

    ·SGL : 2D繪圖引擎

    ·SSL     位於TCP/IP 與各種應用層協議之間,為資料通訊提供支援

    ·Libc   提供了一套針對移動裝置優化後的C標準庫

1.4 底層Linux核心

    Android 開放平臺採用了 Linux核心,包括 顯示驅動、攝像頭驅動、Flash記憶體驅動、Binder(IPC)驅動、鍵盤驅動、WIFI驅動、視訊驅動及電源驅動等。

    Linux核心層是 軟體層與硬體層之間的橋樑,開發者不必關心。