目錄
1.Android背景與當前的狀況
Android系統(tǒng)是由Andy Rubin創(chuàng)建的梭依,后來被Google收購了父泳;最早的版本是:Android 1.1版本 而現(xiàn)在最新的版本是今年5.28,Google I/O大會上推出的Android M祭隔,有趣的是Android系統(tǒng)的命名都是以點心來命名的篮灼,下述表是15個Android版本名稱忘古,對應API號以及發(fā)布時間!
系統(tǒng)版本名稱 | API版本號 | 發(fā)布時間 |
---|---|---|
Android 1.5:Cupcake:紙杯蛋糕 | 3 | 2009.4.30 |
Android 1.6:Donut:甜甜圈 | 4 | 2009.9.15 |
Android 2.0/2.0.1/2.1:Eclair:松餅 | 5/6/7 | 2009.10.26 |
Android 2.2/2.2.1:Froyo:凍酸奶 | 8 | 2010.5.20 |
Android 2.3:Gingerbread:姜餅 | 9 | 2010.12.7 |
Android 3.0:Honeycomb:蜂巢 | 11 | 2011.2.2 |
Android 3.1:Honeycomb:蜂巢 | 12 | 2011.5.11 |
Android 3.2:Honeycomb:蜂巢 | 13 | 2011.7.13 |
Android 4.0:Ice Cream Sandwich:冰激凌三文治 | 14 | 2011.10.19 |
Android 4.1:Jelly Bean:果凍豆 | 16 | 2012.6.28 |
Android 4.2:Jelly Bean:果凍豆 | 17 | 2012.10.30 |
Android 4.3:Jelly Bean:果凍豆 | 18 | 2013.7.25 |
Android 4.4:KitKat:奇巧巧克力 | 19 | 2013.11.01 |
Android 5.0:Lollipop:棒棒糖 | 21 | 2014.10.16 |
Android M:預覽版 | 22 | 2015.5.28 |
好了诅诱,除了上面這些公共版本外髓堪,當然還有一些其他的版本,截止2015.1娘荡,各個版本的市場份額如下:
看完上面的信息干旁,我們可能有這樣的一個疑問: 那么多的系統(tǒng)版本,我們開發(fā)的時候要針對哪個版本進行開發(fā)炮沐? 這就是作為一個Android必須面對的Android的"碎片化"問題了争群,而這個問題又分為兩個:
①系統(tǒng)碎片化:我們開發(fā)App時可能需要做到低版本兼容,比如大年,最低兼容至2.3版本换薄;由于各種Rom定制的盛行,國人都喜歡對原生系統(tǒng)做一些更改翔试,這導致了在原生系統(tǒng)上可行轻要,而在定制Rom上不可行的問題,比如相機調(diào)用~
②屏幕碎片化:市面上各種各樣屏幕尺寸的手機垦缅,4.3寸冲泥,4.5寸,4.7寸壁涎,5.0寸凡恍,5.3寸...等等,除了手機外怔球,還有Android平板嚼酝,所以開發(fā)時我們可能要處理這個屏幕適配的問題,當然庞溜,剛學我們并不需要去考慮這些復雜的東西革半,后續(xù)實際開發(fā)我們再來深究碑定!
2.Android系統(tǒng)特性與平臺架構
系統(tǒng)特性:
- 應用程序框架支持組件的重用與替換(app發(fā)布時遵守了框架的約定流码,其他app也可以使用該模塊)
- Dalvik虛擬機:專門為移動設備優(yōu)化 -集成的瀏覽器:開源的WebKit引擎
- SQLite結構化的數(shù)據(jù)存儲
- 優(yōu)化的圖形庫,多媒體支持,GSM電話技術,藍牙等
- 采用軟件疊層方式構建
平臺架構圖:
架構的簡單理解:
Application(應用程序?qū)? 我們一般說的應用層的開發(fā)就是在這個層次上進行的又官,當然包括了系統(tǒng)內(nèi)置的一組應用程序,使用的是Java語言
Application Framework(應用程序框架層) 無論系統(tǒng)內(nèi)置或者我們自己編寫的App漫试,都需要使用到這層六敬,比如我們想弄來電黑名單,自動掛斷電話驾荣,我們就需要用到電話管理(TelephonyManager) 通過該層我們就可以很輕松的實現(xiàn)掛斷操作外构,而不需要關心底層實現(xiàn)
Libraries(庫) + Android Runtime(Android運行時) Android給我們提供了一組C/C++庫,為平臺的不同組件所使用播掷,比如媒體框架审编;而Android Runtime則由Android核心庫集 + Dalvik虛擬機構成,Dalvik虛擬機是針對移動設備的虛擬機歧匈,它的特點:不需要很快的CPU計算速度和大量的內(nèi)存空間;而每個App都單獨地運行在單獨的Dalvik虛擬機內(nèi)每個app對于一條Dalvik進程)而他的簡單運行流程如:
- Linux內(nèi)核 這里就是涉及底層驅(qū)動的東西了垒酬,一些系統(tǒng)服務,比如安全性件炉,內(nèi)存管理以及進程管理等
3.本節(jié)小結:
本節(jié)對Android的歷史背景以及現(xiàn)狀進行了了解勘究,然后簡單分析了Android的系統(tǒng)特性以及系統(tǒng)架構,這些概念性的東西斟冕,我們了解了解即可口糕,而下一節(jié)我們將開始Android環(huán)境的搭建!