一、Android系統
Android一詞的本義指“機器人”,同時也是Google于2007年11月5日宣布的基于Linux平臺的開源手機作業系統的名稱,該平臺由作業系統、中間件、用戶界面和應用軟體組成,
二、Android已發布版本
Android在正式發行之前,最開始擁有兩個內部測驗版本,并且以著名的機器人名稱來對其進行命名,它們分別是:阿童木(AndroidBeta),發潭訓器人(Android 1.0),后來由于涉及到著作權問題,谷歌將其命名規則變更為用甜點作為它們系統版本的代號的命名方法,甜點命名法開始于Android 1.5發布的時候,作為每個版本代表的甜點的尺寸越變越大,然后按照26個字母數序:紙杯蛋糕(Android 1.5),甜甜圈(Android 1.6),松餅(Android 2.0/2.1),凍酸奶(Android 2.2),姜餅(Android 2.3),蜂巢(Android 3.0),冰激凌三明治(Android 4.0),果凍豆(Jelly Bean,Android4.1和Android 4.2),奇巧(KitKat,Android 4.4),棒棒糖(Lollipop,Android 5.0),棉花糖(Marshmallow,Android 6.0),牛軋糖(Nougat,Android 7.0),奧利奧(Oreo,Android 8.0),派(Pie,Android 9.0) [8-9]
從Android 10開始,Android不會再按斬訓于美味零食或甜點的字母順序命名,而是轉換為版本號,就像Windows作業系統和iOS系統一樣 [10] ,
三、Android系統的特點
(1).開放性:
在優勢方面,Android平臺首先就是其開放性,開放的平臺允許任何移動終端廠商加入到Android聯盟中來,顯著的開放性可以使其擁有更多的開發者,隨著用戶和應用的日益豐富,一個嶄新的平臺也將很快走向成熟,
開發性對于Android的發展而言,有利于積累人氣,這里的人氣包括消費者和廠商,而對于消費者來講,最大的受益正是豐富的軟體資源,開放的平臺也會帶來更大競爭,如此一來,消費者將可以用更低的價位購得心儀的手機,
(2).豐富的硬體:
這一點還是與Android平臺的開放性相關,由于Android的開放性,眾多的廠商會推出千奇百怪,功能特色各具的多種產品,功能上的差異和特色,卻不會影響到資料同步、甚至軟體的兼容,如同從諾基亞Symbian風格手機一下改用蘋果iPhone,同時還可將Symbian中優秀的軟體帶iPhone上使用、聯系人等資料更是可以方便地轉移,
(3).跨平臺:
由于使用Java進行開發,Android繼承了Java跨平臺的優點,任何Android應用幾乎無需任何修改就能運行于所有的Android設備,包括但不限于手機,平板,手環,車載系統,智能家居,
(4).方便開發
Android平臺提供給第三方開發商一個十分寬泛、自由的環境,不會受到各種條條框框的阻擾,可想而知,會有多少新穎別致的軟體會誕生,但也有其兩面性,血腥、暴力、情色方面的程式和游戲如何控制正是留給Android難題之一,
(5).Google應用
在互聯網的Google已經走過10年度歷史,從搜索巨人到全面的互聯網滲透,Google服務如地圖、郵件、搜索等已經成為連接用戶和互聯網的重要紐帶,而Android平臺手機將無縫結合這些優秀的Google服務,
缺點:
(1).太碎片化:
紛繁復雜的螢屏尺寸,解析度,不同版本且訂制開發的Android系統,各個廠家硬體,虛擬選單等,給開發者帶來一定的復雜性,
(2).兼容性問題:
由于各大廠商對系統的定制,導致一些第三方的功能在不同的安卓手機上出現不同的兼容性要求,
四、Android 8.0的系統根目錄結構圖

五、Android系統架構

Android從下往上層主要分為4層,如同網路的七層協議,這樣做的好處是屏蔽本層與下層的差異:
(1).linux內核層(Linux Kernel)
(2).系統運行時庫層 (Libraries and Android Runtime)
(3).應用程式框架層(Application Framework)
(4).應用程式層 (Application)
- linux內核層(Linux Kernel)

- 硬體抽象層
在linux內核層和系統運行時庫層之間還有一層硬體抽象層(Hardware Abstract Layer,HAL),它是對硬體設備的具體實作加以抽象,鑒于許多硬體設備廠商不希望公開其設備驅動的源代碼,如果能將android的應用框架層與linux系統內核的設備驅動隔離,使應用程式框架的開發盡量獨立于具體的驅動程式,則android將減少對Linux內核的依賴,HAL由此而生,它是對Linux內核驅動程式進行的封裝,將硬體抽象化,屏蔽掉了底層的實作細節,
- 系統運行庫層
由系統類別庫和Android運行時組成,
- 系統類別庫(Libraries)
系統類別庫大部分由C/C++撰寫,提供的功能通過Android應用程式框架來呼叫,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/291513.html
標籤:其他
上一篇:Android 面試匯總
