讀書筆記:android設計與實現第一…

做了一段時間的android應用開發,突然想徹底搞清楚android應用的原理,今天開始看android設計與開發,每天發帖,記錄知識點,供以後自己回顧。也算是鞭策自己看完這麼書,並有所收穫:

一,android體系結構:
 1,應用層:在熟悉不過,之前開發的app全是應用層的東西。記賬本,碼上發,圖片瀏覽,等等
 2,應用框架層:給應用層提供API: ActivityManager,WindowsManager,ContentProviders,ViewSystem,PackageManager,TelephonyMa nager,ResouceManager,LocationManager,NotificationManager,等等,我們在開發APP時會用到這些 API
讀書筆記:android設計與實現第一天

 3,系統運行庫和系統android運行環境層:
爲應用框架層提供服務,主要分兩個部分,系統運行庫和android運行環境,主要用C和C++實現。第二層,也就是應用框架層爲應用層提供的功能,在底層大多是由系統運行庫實現,android應用層使用的多媒體,瀏覽器,數據庫,圖形引擎等,功能實現位於該層。
至於爲什麼要分這麼多層,請查考這篇博客:
讀書筆記:android設計與實現第一天

 4,內核層:
  內核層:基於Linux內核,個人理解實現硬件驅動,進程管理。和硬件直接交互,又對運行的程序進行管理。
動態視角的體系結構:::愚昧呀,也是第一次聽說
將android分爲兩個交互的空間:用戶空間,內核空間:
用戶空間分爲:native子系統和java子系統,通過JNI技術連接在一起,建立在內核空間上
native子系統:NDK開發的App,應用框架層native部分和標準C/C++部分
java子系統:sdk開發的ap,內置app,應用框架層java部分,標準庫的java接口組成。
內核空間:linux內核和android擴展支持,android主要包括:Binder,Logger,OOM等機制


框架基礎:JNI
JNI在android系統中所處的位置:
讀書筆記:android設計與實現第一天
 JNI:java平臺上定義的一套標準的編程接口,android體系結構中應用層和應用框架層主要是java語言,所以JNI部分的代碼主要在這兩層。。。



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