1)程序庫
Android 包含一些 C/C++庫,這些庫能被 Android 系統中不同的組件使用。它們通過 Android 應用程 序框架為開發者提供服務。以下是一些核心庫: * 系統 C 庫 - 一個從 BSD 繼承來的標準 C 系統函數庫( libc ), 它是專門為基于 embedded linux 的設備定制的。 * 媒體庫 - 基于 PacketVideo OpenCORE;該庫支持多種常用的音頻、視頻格式回放和錄制,同時支持 靜態圖像文件。編碼格式包括 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。 * Surface Manager - 對顯示子系統的管理,并且為多個應用程序提 供了 2D 和 3D 圖層的無縫融合。 * LibWebCore - 一個最新的 web 瀏覽器引擎用,支持 Android 瀏覽器和一個可嵌入的 web 視圖。 * SGL - 底層的 2D 圖形引擎 * 3D libraries - 基于 OpenGL ES 1.0 APIs 實現;該庫可以使用硬件 3D 加速(如果可用)或者使用高度優 化的 3D 軟加速。 * FreeType -位圖(bitmap)和矢量(vector)字體顯示。 * SQLite - 一個對于所有應用程序可用,功能強勁的輕型關系型數據庫引擎。
2)Android 運行庫
Android 包括了一個核心庫,該核心庫提供了 java 編程語言核心庫的大多數功能。 每一個 Android 應用程序都在它自己的進程中運行,都擁有一個獨立的 Dalvik 虛擬機實例。Dalvik 被 設計成一個設備可以同時高效地運行多個虛擬系統。 Dalvik 虛擬機執行(.dex)的 Dalvik 可執行文件,該格 式文件針對小內存使用做了優化。同時虛擬機是基于寄存器的,所有的類都經由 JAVA 編譯器編譯,然后 通過 SDK 中 的 “dx” 工具轉化成.dex 格式由虛擬機執行。 Dalvik 虛擬機依賴于 linux 內核的一些功能,比如線程機制和底層內存管理機制。
新聞熱點
疑難解答