2015-12-21 17:46:04 1331瀏覽
從Android系統(tǒng)組成的角度來講,我們對于Android開發(fā)技術能概括出5個層面來。本文對Android開發(fā)系統(tǒng)的分一下類,讓讀者可以更深層次的了解Android開發(fā)。
1、Linux Kernel開發(fā)
主要工作是將Linux移植到不同的硬件平臺上,并提供相應的硬件驅動。對于大多數(shù)硬件設備而言,比如USB接口、網(wǎng)卡、聲卡等設備,都有現(xiàn)成的驅動;但對于一些自定義的硬件設備,則需要開發(fā)自定義的驅動,同時對于這些專有設備的使用,還必須提供一套Java應用程序可以使用的接口,也就是說,需要與Libraries開發(fā)人員協(xié)同工作。
2、Libraries開發(fā)
Libraries為Application Framework提供服務,主要是調(diào)用Linux驅動完成一些硬件操作,并包含一些高效的c/c++函數(shù)庫。如前所述,如果給一個Android設備增加了一個硬件模塊,那么除了要寫一個該硬件模塊的Linux驅動外,還得用c/c++寫一個Libraries來調(diào)用驅動,再用Java寫一個ApplicationFramework來調(diào)用該Libraries,最終,Java應用程序才能使用該硬件設備。
3、Dalvik VM
因為Google一直都沒有對Dalvik VM開源,所以,一般不能直接去開發(fā)Dalvik,也很少需要去開發(fā)Dalvik。
4、Application Framework的開發(fā)
這部分內(nèi)容主要由Google開發(fā),Google已經(jīng)定義了GUI和系統(tǒng)服務的架構,因此,對于這部分更多的開發(fā)是擴展系統(tǒng)服務,而不是重寫已有的GUI或者系統(tǒng)服務。
5、應用程序開發(fā)
該部分內(nèi)容包括如何創(chuàng)建一個窗口,如何給窗口中添加一些文字、按鈕等。根據(jù)用戶的輸入完成不同的功能,比如播放音樂、存儲數(shù)據(jù)、啟動不同的程序、發(fā)送短信、撥打電話等,這些都是應用程序干的事情。本書所涵蓋的內(nèi)容僅在應用程序開發(fā)。
“Android操作系統(tǒng)”這個叫法往往有點含糊,從Android整個系統(tǒng)組成來講,它包含了LinuxKernel和Dalvik虛擬機部分;而從應用程序開發(fā)的角度來講,Android開發(fā)者關心最多的還是Google所定義的GUI和系統(tǒng)服務框架部分。了解更多Android開發(fā)知識,觀看扣丁學堂Android視頻,讓您從零開始學Android不費力。