工程相關(guān)
工程目錄下各個包名的作用:
以 channel 為例:
- art 全新的ART運行環(huán)境破衔,作為Dalvik虛擬機(jī)的替代
- bionic 系統(tǒng)C庫
- bootable 啟動引導(dǎo)相關(guān)代碼
- build 存放系統(tǒng)編譯規(guī)則及generic等基礎(chǔ)開發(fā)包配置
- core 核心編譯規(guī)則
- target 相關(guān)的文件拷貝路徑 如:驅(qū)動 .rc等配置文件拷貝規(guī)則
- compatibility 兼容性的一些東西
- cts Android兼容性測試套件標(biāo)準(zhǔn)
- dalvik dalvik JAVA虛擬機(jī)
- development 示例以及開發(fā)工具 主要是給系統(tǒng)開發(fā)者使用 另外的一個developers文件夾展示了當(dāng)前版本的新特性同時包含了相關(guān)示例以及示例的截圖,要了解新特性的用法建議各位可以看看里面的東西。
- device 設(shè)備相關(guān)配置,各品牌手機(jī)在硬件上會有差異,廠商會對源碼進(jìn)行定制 修改它的某些部分來配合自家硬件的特性,比如Wifi Adb端口如果需要寫死,可以添加屬性并設(shè)置里面的參數(shù)
- external android使用的一些開源的模組
- framework 核心框架---java及C++語言:自己平時工作相關(guān)的代碼大部分在這里柔滔,后面著重分析
- hardware 部分廠家開源的硬解適配層HAL代碼
- kernel 內(nèi)核
- libcore java核心庫 包括java api的源碼
- libnativehelper 動態(tài)庫實現(xiàn)JNI庫的基礎(chǔ)
- out 編譯完成后的代碼輸出到此目錄
- packages 應(yīng)用程序包:含很多Android項目的源碼,比如錄音萍虽,電話睛廊,系統(tǒng)設(shè)置,或者三方的一些程序(閱讀器杉编,應(yīng)用商城)等等
- apps 核心應(yīng)用程序
- inputmethods 輸入法目錄
- experimental 第三方應(yīng)用程序
- providers 內(nèi)容提供者目錄:像我們在應(yīng)用上能都訪問手機(jī)系統(tǒng)通訊錄超全,系統(tǒng)日歷,都是package中寫好的內(nèi)容提供者邓馒,所以我們才能調(diào)用那些uri對系統(tǒng)數(shù)據(jù)進(jìn)行增刪改查操作嘶朱。
- screensavers 屏幕保護(hù)
- services 通信服務(wù)
- wallpapers 墻紙
- pdk Plug Development Kit 的縮寫,本地開發(fā)套件,google減少碎片化的東西
- platform_testing 平臺測試
- prebuilts x86和arm架構(gòu)下預(yù)編譯好的一些資源 包括模擬器,內(nèi)核文件
- release 編譯生成的文件
- sdk sdk和模擬器
- system 底層文件系統(tǒng)庫光酣、應(yīng)用及組件——C語言
- toolchain 工具鏈文件
- tools 工具文件
- Android.bp 早期的Android系統(tǒng)都是采用Android.mk的配置來編譯源碼见咒,從Android 7.0開始引入Android.bp,Android.bp的出現(xiàn)就是為了替換掉Android.mk挂疆。
- bootstrap.bash 引導(dǎo)腳本文件
- Makefile 全局Makefile文件改览,用來定義編譯規(guī)則
以下目錄并非通用目錄:
- Samsung 對應(yīng)手機(jī)廠商目錄
- shortcut-fe 根據(jù)手機(jī)平臺芯片改變下翎,這里是高通xx加速
- test 測試相關(guān)文件
- vendor 渠道商
Common Framework開發(fā)
將要負(fù)責(zé)的模塊主要是在framework/base里的代碼,其中又以framework/base/services/core為重心,常見的的WMS(WindowManagerService)宝当、AMS(ActivityManagerService)等都在這里视事。
更加詳細(xì)的查看以下文章:
https://blog.csdn.net/wjky2014/article/details/18262251
https://blog.csdn.net/itachi85/article/details/54695046