淺析android開發(fā)框架有哪些結(jié)構(gòu)
2016-08-03 13:45:40
1835瀏覽
android是基于Linux內(nèi)核的開放源代碼操作系統(tǒng),android的系統(tǒng)結(jié)構(gòu)。其層次結(jié)構(gòu)自上而下可以分為四層。對(duì)于想要學(xué)習(xí)android開發(fā)技術(shù)的學(xué)員們,扣丁學(xué)堂android開發(fā)培訓(xùn)講師這里為大家系統(tǒng)的解析一下android系統(tǒng)層次結(jié)構(gòu)。
淺析android開發(fā)框架有哪些結(jié)構(gòu):
第一層是應(yīng)用程序?qū)樱峁├肑ava語(yǔ)言編寫的一系列最核心的應(yīng)用程序,其中包括電話、聯(lián)系人、瀏覽器等。這些應(yīng)用程序均使用Java語(yǔ)言編寫,同時(shí)Google為第三方開發(fā)者提供了SDK,允許開發(fā)者將自己編寫的應(yīng)用程序安裝、運(yùn)行在android系統(tǒng)中。
第二層是應(yīng)用程序框架層,提供Andl’oid基本的管理功能和組件重用可替換機(jī)制,同時(shí)提供了大量的API供開發(fā)者使用,這些API成為應(yīng)用程度開發(fā)的基礎(chǔ)。
第三層是中間件層,由函數(shù)庫(kù)和android運(yùn)行時(shí)構(gòu)成。函數(shù)庫(kù)包含被不同組件使用的C/C++庫(kù)的集合,主要包含專門為嵌入式系統(tǒng)優(yōu)化過的標(biāo)準(zhǔn)C庫(kù),對(duì)圖像視頻提供支持的媒體庫(kù),對(duì)顯示子系統(tǒng)進(jìn)行管理的Surface Manager,2D網(wǎng)形引擎SGL,基于OpenGL ES支持軟硬件加速的3D庫(kù),處理位圖和向量字體顯示的FreeType,適合嵌入式系統(tǒng)的輕量級(jí)關(guān)系數(shù)據(jù)庫(kù)SQLite,以及瀏覽器渲染引擎和腳本處理引擎。通常情況下,android不允許開發(fā)者直接調(diào)用函數(shù)庫(kù),而需要通過應(yīng)用程序框架層封裝的方法對(duì)函數(shù)庫(kù)進(jìn)行調(diào)用。
android運(yùn)行時(shí)對(duì)android系統(tǒng)的應(yīng)用程序有著重大意義,由核心庫(kù)與Dalvik虛擬機(jī)組成,每個(gè)android應(yīng)用程序都是運(yùn)行在單獨(dú)的Dalvik虛擬機(jī)內(nèi),Google在對(duì)android進(jìn)行版本升級(jí)的過程中多次對(duì)Dalvik虛擬機(jī)的運(yùn)行效率進(jìn)行優(yōu)化升級(jí),運(yùn)行時(shí)的核心庫(kù)對(duì)Java語(yǔ)言核心庫(kù)中的大部分功能進(jìn)行了實(shí)現(xiàn),這也是android支持Java語(yǔ)言編寫應(yīng)用程序的基礎(chǔ)。
第四層是Linux內(nèi)核,Linux內(nèi)核作為成熟的操作系統(tǒng)核心技術(shù)具有免費(fèi)、可靠、安全、穩(wěn)定、支持多平臺(tái)的重要特性,因此android系統(tǒng)建立在Linux內(nèi)核之上。Linux內(nèi)核為android系統(tǒng)提供權(quán)限機(jī)制、內(nèi)存管理、進(jìn)程調(diào)度、電源管理、網(wǎng)絡(luò)協(xié)議及硬件設(shè)備驅(qū)動(dòng)等核心服務(wù)。
android的開發(fā)者可以使用應(yīng)用程序框架層的API利用Java語(yǔ)言實(shí)現(xiàn)自己的應(yīng)用程序開發(fā),同時(shí)android也支持利用Google提供的NDK,采用Java結(jié)合C/C++的方法開發(fā)應(yīng)用程序。這也是android的巨大潛力與魅力的體現(xiàn)。扣丁學(xué)堂為對(duì)android開發(fā)感興趣的讀者制定了系統(tǒng)的學(xué)習(xí)路線視頻,免費(fèi)供讀者觀看。
標(biāo)簽:
安卓開發(fā)教程
Android開發(fā)培訓(xùn)
Android開發(fā)教程