從事Android開發工做也有好幾年,說來慚愧,居然沒有好好去研究下android的源碼,有種暴殄天物的感受。一方面從本身技術提高角度,另外一方面也是想給本身一個目標,生活也不至於太茫然。準備花段時間好好研究下android的源碼,寫博客也算是給本身一個完成目標,不至於半途而廢。同時,因爲本人技術和語言組織能力有限,對於有些技術點多多少少都有點借鑑源自網絡,若是未申明轉載地址,多是因爲原文出處沒法探究,還請原做者諒解。介紹多多少少都有不足之處,可能淺顯,可能有誤,可能沒有描述清楚,還請諒解,能夠給我留言,方便完善,不要給其餘查看到的同窗產生誤解就行了。android
我也是fork別人的網盤,忘記了那篇文章地址了,抱歉!感謝!網絡
連接: https://pan.baidu.com/s/15PNt1W4jjxZXM9o-qCC94A 密碼: p3td架構
根目錄 | 描述 |
abi | abi相關代碼,應用程序二進制接口 |
bionic | bionic C庫 |
bootable | 啓動引導相關代碼 |
build | 存放系統編譯規則及generic等基礎開發配置包 |
cts | Android兼容性測試套件標準 |
dalvik | dalvik Java虛擬機 |
development | 應用程序開發相關代碼 |
device | 設備相關代碼 |
docs | 介紹開源的相關文檔 |
external | Android使用的一些開源的模組 |
frameworks | 核心框架——Java及C++語言,是Android應用程序的框架 |
gdk | 即時通訊模塊 |
hardware | 主要是硬件適配層HAL代碼 |
kernel | Linux的內核文件 |
libcore | 核心庫相關 |
libnativehelper | 是Support functions for Android's class libraries的別名,表示動態庫,是實現JNI庫的基礎 |
ndk | ndk相關代碼。Android NDK(Android Native Development Kit)是一系列的開發工具,容許程序開發人員在Android應用程序中嵌入C/C++語言編寫的非託管代碼 |
out | 編譯完成後的代碼輸出在此目錄 |
packages | 應用程序包 |
pdk | Plug Development Kit的縮寫,是本地開發套件 |
prebuilts | x86和ARM架構下預編譯的一些資源 |
sdk | SDK及模擬器 |
system | 文件系統和應用及組件,是用C語言實現的 |
tools | 工具文件夾 |
vendor | 廠商定製代碼 |
Makefile | 全局的Makefile |
對於源碼文件夾目錄詳細對應的描述能夠參考這邊博文:https://blog.csdn.net/norry870420/article/details/54288369框架
原本想說總結,可是想一想還不是總結的時候,這只是一個開始。ionic
後續的隨筆我會從本身工做中經常使用的幾個類入手,慢慢逐步分析,由淺入深來探索android源碼。因爲功力有限,可能前期會介紹的比較淺顯,可是這是一個迭代的過程,每篇文章最後都會通過屢次修改,逐步完善。畢竟一口吃不掉一個胖子,堅持堅持堅持。工具
最後推薦個博客:老羅Android之旅:https://blog.csdn.net/Luoshengyang/。開發工具