西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁(yè)西西教程其它教程 → Android知識(shí)體系結(jié)構(gòu)概覽

Android知識(shí)體系結(jié)構(gòu)概覽

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來源:西西整理時(shí)間:2014/4/15 14:46:35字體大。A-A+

作者:西西點(diǎn)擊:20次評(píng)論:0次標(biāo)簽: Android

  • 類型:源碼相關(guān)大。23.6M語言:中文 評(píng)分:9.1
  • 標(biāo)簽:
立即下載

什么是Android?

Android是一個(gè)移動(dòng)設(shè)備的程序集合,包括的操作系統(tǒng)、中間件和關(guān)鍵的應(yīng)用程序。 Android SDK 提供了必要的工具和API,使用Java編程語言在Android平臺(tái)開發(fā)應(yīng)用程序。

特點(diǎn)

* 應(yīng)用程序框架* 使組件可以被重用和替換

* Dalvik虛擬機(jī)* 為移動(dòng)設(shè)備優(yōu)化

* 集成的瀏覽器* 基于開源的WebKit引擎

* 基于優(yōu)化的圖形* 由一個(gè)自定義的2D圖形庫(kù)支持;3D圖形的OpenGL ES 1.0規(guī)范(可選硬件加速)

* SQLite* 結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ)

* 媒體支持* 常見的音頻、視頻和靜止圖像格式(MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF)

* GSM電話* (依賴于硬件)

* 藍(lán)牙、EDGE、3G和WiFi* (依賴于硬件)

* 攝像頭、GPS、指南針、和加速度計(jì)* (依賴于硬件)

* 豐富的開發(fā)環(huán)境* 包括設(shè)備模擬器、調(diào)試器、內(nèi)存和性能分析工具,以及一個(gè)Eclipse IDE的插件

Android架構(gòu)

下圖展示了Android操作系統(tǒng)的主要組成部分,每一部分在下面有更詳細(xì)地描述。

文件:Android framework.png

應(yīng)用程序

Android會(huì)附帶了一套核心應(yīng)用,包括電子郵件客戶端,短信程序,日歷,地圖,瀏覽器,聯(lián)系人等。所有應(yīng)用程序都使用Java編程語言編寫。

應(yīng)用框架

Android通過一個(gè)開放的開發(fā)平臺(tái),給開發(fā)人員在創(chuàng)建極為豐富創(chuàng)新性的應(yīng)用程序上提供了有力的支持。開發(fā)者可以自由設(shè)定設(shè)備的硬件場(chǎng)景、接入位置信息、運(yùn)行后臺(tái)服務(wù)、設(shè)置鬧鐘、添加狀態(tài)欄通知和更多的在其他優(yōu)勢(shì)方面上。
開發(fā)者擁有使用相同的框架API訪問核心應(yīng)用程序的全部權(quán)利。應(yīng)用程序架構(gòu)旨在簡(jiǎn)化組件的重用,任何應(yīng)用都可以發(fā)布它的功能,之后任何其他應(yīng)用程序都能使用這些功能(受強(qiáng)制執(zhí)行的安全框架約束)。該機(jī)制允許用戶更換組件。
在所有應(yīng)用程序的背后都是使用一套服務(wù)和系統(tǒng),包括:
* 豐富的 視圖和擴(kuò)展,可以用來構(gòu)建應(yīng)用程序,包括列表、網(wǎng)格、文本框、按鈕、甚至內(nèi)嵌的網(wǎng)頁(yè)瀏覽器
* 內(nèi)容提供者(Content Providers),使應(yīng)用程序能夠訪問其他應(yīng)用程序的數(shù)據(jù)(如通訊錄)或共享自己的數(shù)據(jù)
資源管理器(Resource Manager),提供非代碼資源的訪問,如本地化的字符串、圖形、和布局文件
* 通知管理器(Notification Manager),使所有的應(yīng)用程序都能在狀態(tài)欄顯示自定義警報(bào)信息
* 活動(dòng)管理器(Activity Manager)管理應(yīng)用程序的生命周期,并提供一個(gè)導(dǎo)航使用的共同的返回棧
對(duì)于更多的細(xì)節(jié)和應(yīng)用程序的演示,請(qǐng)看記事本教程。

庫(kù)

Android包括一組由C / C + Android系統(tǒng)組成的各個(gè)部分所用的庫(kù)。這些功能都通過Android應(yīng)用程序框架提供給開發(fā)者。下面列出了一些核心庫(kù):
* * 系統(tǒng)C庫(kù)* - BSD,一個(gè)為基于嵌入式Linux的設(shè)備調(diào)整的標(biāo)準(zhǔn)C系統(tǒng)庫(kù)(libc)的派生實(shí)現(xiàn)
* * 媒體庫(kù)* - 基于PacketVideo的OpenCORE庫(kù)支持許多流行的音頻和視頻格式的播放和錄音,以及靜態(tài)圖像文件,包括MPEG4,H.264標(biāo)準(zhǔn),支持MP3,AAC,AMR,JPG和PNG格式
* * Surface Manager* - 管理訪問顯示子系統(tǒng)和從多個(gè)應(yīng)用程序無縫合成2D和3D圖形層
* * LibWebCore* - 一個(gè)為Android瀏覽器和可嵌入的網(wǎng)頁(yè)視圖提供支持的現(xiàn)代化的網(wǎng)頁(yè)瀏覽器引擎
* * SGL* - 底層的2D圖形引擎
* * 3D庫(kù)* - 基于OpenGL ES 1.0 API的實(shí)施庫(kù),無論使用或是包含硬件3D加速(如果可用)和高度優(yōu)化的3D軟件光柵化
* * FreeType* - 位圖和矢量字體渲染
* * SQLite* - 為所有的應(yīng)用程序提供一個(gè)強(qiáng)大而且輕量級(jí)的關(guān)系數(shù)據(jù)庫(kù)引擎

Android運(yùn)行時(shí)

Android包括一套核心庫(kù),提供在Java編程語言的核心庫(kù)中大部分可用的功能。
每一個(gè)Android應(yīng)用程序與自己的Dalvik虛擬機(jī)運(yùn)行在它自己的進(jìn)程中。Dalvik被設(shè)計(jì)成設(shè)備可以有效地運(yùn)行多個(gè)虛擬機(jī)。Dalvik虛擬機(jī)執(zhí)行的Dalvik可執(zhí)行格式(.dex)是最小的內(nèi)存占用優(yōu)化文件。虛擬機(jī)是基于寄存器的,運(yùn)行已所包含的“dx”工具轉(zhuǎn)化成.dex格式的Java語言的編譯器編譯的類。
Dalvik虛擬機(jī)依賴于Linux內(nèi)核的基本功能,如:線程和低級(jí)別的內(nèi)存管理。

Linux內(nèi)核

Android依賴Linux 2.6版本的系統(tǒng)核心服務(wù),如安全,內(nèi)存管理,進(jìn)程管理,網(wǎng)絡(luò)堆棧,驅(qū)動(dòng)模型。內(nèi)核也作為硬件和軟件堆棧的其余部分之間的抽象層。

 

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過審核才能顯示)