
1、Linux內(nèi)核層:
Android系統(tǒng)是基于Linux2.6內(nèi)核的,這一層為Android設(shè)備的各種硬件提供了底層的驅(qū)動,如顯示驅(qū)動、音頻驅(qū)動、照相機驅(qū)動、藍牙驅(qū)動、Wi-Fi驅(qū)動、電源管理等。
2、系統(tǒng)運行庫層
這一層是通過一些C/C++庫來為Android系統(tǒng)提供了主要的特性支持。如SQLite庫提供了數(shù)據(jù)庫的支持,OpenGL/ES庫提供了3D繪圖的指出,Webkit庫提供了瀏覽器內(nèi)核的支持等。
同樣在這一層還有Android運行時庫,他主要提供了一些核心庫,能夠允許開發(fā)發(fā)著使用Java語言來編寫Android應(yīng)用。另外Android運行時庫中還包含了Dalvik虛擬機,它使得每一個Android應(yīng)用都能運行在獨立的進程當(dāng)中,并且擁有一個自己的Davik虛擬機實例。相較于Java虛擬機,Davik是專門為移動設(shè)備定制的,它針對于手機內(nèi)存、CPU性能有限等情況做了優(yōu)化處理。
3、應(yīng)用框架層
這一層主要提供了構(gòu)建應(yīng)用程序時可能用到的各種API,Android自帶的一些核心應(yīng)用就是使用這些API完成的,開發(fā)者也可以通過實用這些API來構(gòu)建自己的應(yīng)用程序。
4、應(yīng)用層
所有安裝在手機上的應(yīng)用程序都是屬于這一層的,比如系統(tǒng)自帶的聯(lián)系人、短信等程序,或者是你從Google Play上下載的小游戲,當(dāng)然還包括你自己開發(fā)的程序。
Android應(yīng)用開發(fā)特色
1、四大組件
Android系統(tǒng)四大組件分別是活動(Activity)、服務(wù)(Service)、廣播接收器(Broadcast Receiver)和內(nèi)容提供器(Content Provider)。其中活動是所有Android應(yīng)用程序的門面,凡是在應(yīng)用中你看得到的東西,都是放在活動中的。而服務(wù)就比較低調(diào)了,你無法看到它,但它會一直在后臺默默得運行,即使用戶退出了應(yīng)用,服務(wù)仍然是可以繼續(xù)運行的。廣播接收器可以允許你的應(yīng)用接受來自各處的廣播消息,比如電話、短信等,當(dāng)然你的應(yīng)用同樣也可以向外發(fā)出廣播消息。內(nèi)容提供器則為應(yīng)用程序之間共享數(shù)據(jù)提供了可能,比如你想要讀取系統(tǒng)電話簿中的聯(lián)系ten,就需要通過內(nèi)容提供器來實現(xiàn)。
2、豐富的系統(tǒng)控件
Android系統(tǒng)為開發(fā)者提供了豐富的系統(tǒng)控件,使得我們可以很輕松地編寫出漂亮的界面。當(dāng)然如果你品味比較高,不滿足于系統(tǒng)自帶的控件效果,也完全可以定制屬于自己的控件。
3、SQLite數(shù)據(jù)庫
Android系統(tǒng)還自帶了這種輕量級、運算速度極快的嵌入式關(guān)系型數(shù)據(jù)庫。它不僅支持標準的SQL語法,還可以通過Android封裝好的API進行操作,讓儲存和讀取數(shù)據(jù)變得非常方便。
4、地理位置定位
移動設(shè)備和PC相比起來,地理位置定位功能應(yīng)該可以算很大的一個兩點?,F(xiàn)在的Android手機都內(nèi)置有GPS,走到哪兒都可以定位到自己的位置,發(fā)揮你想象就可以做出創(chuàng)意十足的應(yīng)用,如果再結(jié)合上功能強大的地圖功能,LBS這一領(lǐng)域潛力無限。
5、強大的多媒體
?Android系統(tǒng)還提供了豐富的多媒體服務(wù),如音樂、視頻、錄音、拍照、鬧鈴等等,這一切你都可以在程序中通過代碼進行控制,讓你的應(yīng)用變得更加豐富多彩。
6、傳感器
Android手機中都會內(nèi)置多種傳感器,如加速度傳感器、方向傳感器等,這也算是移動設(shè)備的一大特點。通過靈活的使用這些傳感器,你可以做出很多在PC上根本無法實現(xiàn)的應(yīng)用。
感受
剛開始接觸安卓開發(fā)感覺很有意思,開始搭建了一個安卓的開發(fā)環(huán)境需要好多軟件 ?比如,Android SDK、Eclipse、ADT。然后創(chuàng)建了第一個Android項目——helloworld。感覺他很神奇。之后運行了helloworld。雖然看起來很簡單。但是當(dāng)看見運行成功之后還是很高興的。