[CyanogenMOD移植教程]第二章:android 源碼總體結構

– Makefile (全局的Makefile文件)
– bionic(Bionic含義爲仿生,這裏面是一些基礎的C庫源代碼)
– bootloader (引導加載器)
build目錄中的內容不是目標所用的代碼,而是編譯和配置所需要的腳本和工具)
– build(build目錄中的內容不是目標所用的代碼,而是編譯和配置所需要的腳本和工具)
– cts (Android兼容性測試套件標準)
– libcore (核心庫相關)
Dalvik虛擬機 針對嵌入式設備優化的Java
Java虛擬機)
– dalvik (Dalvik虛擬機,針對嵌入式設備優化的Java虛擬機)
– development(創建應用程序所需要的模板和工具)
qcom,
– device(與具體設備相關的一些編譯腳本和庫,如htc,qcom,samsung等)
– external(Android使用的一些外部的開源框架和庫)
(應用程序的框架層,SDK
SDK的接口基本都是在這裏實現的)
– frameworks(應用程序的框架層,SDK的接口基本都是在這裏實現的)
– hardware (與硬件相關的庫)
Linux2.6
– kernel (Linux2.6的內核源代碼)
– ndk (本地開發套件--C語言開發套件)
--C
Android的各種應用程序)
– packages (Android的各種應用程序)
– prebuilt(Android在各種平臺下編譯的預置腳本)
– sdk (SDK及模擬器)
Android的底層的一些庫)
– system (Android的底層的一些庫)
`– vendor (廠商私有的代碼)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
packages/
|– apps (各種應用程序,如聯繫人、瀏覽器等)
|– experimental (一些實驗性的項目,如錯誤報告)
|– inputmethods (輸入法相關)
|– providers (各種數據源實現,如聯繫人數據、媒體庫等信息)
|– wallpapers (各種壁紙程序)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Android Framework功能介紹
android.app:提供高層的程序模型和基本的運行環境。
android.content:包含對各種設備上的數據進行訪問和發佈。
android.database:通過內容提供者瀏覽和操作數據庫。
android.graphics:底層圖形庫,包含畫布、點、矩形等,可以將其直接繪製到屏幕上。
android.location :定位和相關服務的類。
android.media:提供一些類管理多種音頻、視頻的媒體接口。
android.net :提供幫助網絡訪問的類,超過通常的java.net.* 接口。
android.os :提供了系統服務、消息傳輸和 IPC機制。
android.opengl :提供 OpenGL 的工具。
android.provider :提供訪問 Android內容提供者的類。
android.telephony :提供與撥打電話相關的 API交互。
android.view :提供基礎的用戶界面接口框架。
android.util:涉及工具性的方法,例如時間日期的操作。
android.webkit :默認瀏覽器操作接口。
android.widget :包含各種 UI元素(大部分是可見的)在應用程序的佈局中使用
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
build/
|– buildspec.mk.default
|– cleanspec.mk
|– core (各種以mk爲結尾的文件,它門是編譯所需要的Makefile)
|– envsetup.sh
|– libs
|– target (包含board和product兩個目錄,爲目標所需要文件)
|– tools (編譯過程中主機所需要的工具,一些需要經過編譯生成)
其中,core中的Makefile是整個Android編譯所需要的真正的Makefile,它被頂層目錄的Makefile引用。


基本介紹到此,文章參考網絡中各種文章,如果有侵權啥行爲的,請聯繫刪除。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章