




全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Android培訓(xùn):Pro Android學(xué)習(xí)筆記之Android平臺(tái)華迪教育/華迪信息/ 由于智能手機(jī)引入AP(應(yīng)用處理器),Android在某種意義上是個(gè)人計(jì)算機(jī),具有桌面計(jì)算機(jī)的完整架構(gòu),采用Linux-based OS stack來(lái)管理設(shè)備、內(nèi)存和進(jìn)程。Android的Java庫(kù)覆蓋電話,視頻、連接、圖形、UI編程等多個(gè)方面。Android SDK支持幾乎全部的J2SE,除去UI的AWT和Swing部分,而用Android UI framework取而代之。 Android針對(duì)手持設(shè)備的受限內(nèi)存、處理器速度和 電池能力進(jìn)行優(yōu)化Dalvik VM。Dalvik VM將所生成的Java calss文件封裝到一個(gè)或多個(gè)Dalvik執(zhí)行性文件(.dex)。最終在Android執(zhí)行的代碼,并不是Java Byte code,而是.dex文件。也就是你不能直接運(yùn)行Java Byte code,需要轉(zhuǎn)為.dex文件。應(yīng)用開(kāi)發(fā)者的Android架構(gòu)視圖 從應(yīng)用開(kāi)發(fā)者角度看Android軟件stack。LinuxKernel處理設(shè)備驅(qū)動(dòng)、資源訪問(wèn)、電源管理以及其他的OS工作。(Wei:我覺(jué)得這不準(zhǔn)確,因?yàn)锳ndroid有改動(dòng),特別是HAL,且Linux社區(qū)沒(méi)有接納Android的貢獻(xiàn)。)在內(nèi)核之上是C/C+庫(kù),如 OPenGL,WebKit,F(xiàn)reeType(字體處理),SSL,libc,SQLit、Meida。Bionic是Android基于BSD的 Glibc,針對(duì)嵌入系統(tǒng)進(jìn)行改良的libc版本,大小約為原來(lái)的一半。媒體庫(kù)是基于PacketVideo的OpenCore,用于錄制和播放音頻及視 頻格式。Surface管理器處理系統(tǒng)顯示,支持2D和3D。Android采用Skia作為2D圖形庫(kù),采用OpenGL ES來(lái)支持3D。 絕大部分的應(yīng)用框架是通過(guò)DalvikVM來(lái)訪問(wèn)核心庫(kù)。Dalvik VM運(yùn)行多個(gè)VM實(shí)例。當(dāng)Java應(yīng)用訪問(wèn)核心庫(kù)時(shí),每個(gè)應(yīng)用獲得它自己的VM instance。(Wiki:Dalvik虛擬機(jī)器可以有多個(gè)實(shí)例,每個(gè)Android應(yīng)用程序都用一個(gè)自屬的Dalvik虛擬機(jī)器來(lái)執(zhí)行,讓系統(tǒng)在執(zhí)行程序時(shí)可達(dá)到優(yōu)化。Dalvik虛擬機(jī)器并非執(zhí)行Java字節(jié)碼,而是執(zhí)行一種稱為.dex格式的檔案) Android Java庫(kù)就是Android標(biāo)準(zhǔn)架構(gòu)圖中的應(yīng)用框架層,包括電話、資源,位置、UI、內(nèi)容提供者、和包管理器。開(kāi)發(fā)者在這些API上進(jìn)行應(yīng)用開(kāi)發(fā)。有些應(yīng)用已經(jīng)集成到系統(tǒng)上,如Home,聯(lián)系人,電話,和瀏覽器。通過(guò)Android SDK開(kāi)發(fā)應(yīng)用Android模擬器。Android模擬器能支持90%的應(yīng)用開(kāi)發(fā),但在USB連接、攝影和視頻捕獲,電池模擬,藍(lán)牙,耳機(jī),Wi-Fi,NFC和OpenGL ES上有限制。Android采用QEMU技術(shù),是開(kāi)源的“處理器模擬器”,允許一個(gè)OS模擬器在另一個(gè)OS上運(yùn)行。(Wei:MeeGo的模擬器也是采用QEMU,此外還需要KVM,最大的問(wèn)題是KVM虛擬化需要硬件的支持,即CPU必須支持VT,但不是所有桌面機(jī)的CPU都能支持,特別手提的CPU)Android UI。Android UI可以用XML腳本文件來(lái)定制UI應(yīng)用的窗口,通過(guò)ID來(lái)獲取在Java代碼中進(jìn)行控制。而屏幕或窗口在Android中稱為activity。 View是Android基礎(chǔ)的UI單位,可組合為view group。View內(nèi)部使用cavase,painting和用戶交互這些熟悉概念。在Android 3.0引入新UI概念fragment,目的是在大屏幕(平板)上處理多窗格,而fragment提供窗格的抽象。Android框架的一個(gè)關(guān)鍵概念是 activity窗口的生命周期管理?;A(chǔ)組件。Android 的UI框架引入新概念intent。Intent是一個(gè)進(jìn)程內(nèi)和進(jìn)程間喚醒組件的機(jī)制。作為組件就是一段有明確生命周期的代碼,如activity、 service,由事件喚起的receiver,都是組件。要調(diào)起組件,intent具有窗口消息,action,發(fā)布和訂購(gòu)模式,以及進(jìn)程間通信。 Android對(duì)資源支持很直觀,支持 string,bitmaps以及XML-basedView定義。自動(dòng)生成文件R.java就是對(duì)資源的描述,每個(gè)自動(dòng)生成的ID都對(duì)應(yīng)在XML文件中 元素或整個(gè)XML文件。開(kāi)發(fā)者可通過(guò)這些ID使用這些XML定義。這對(duì)于處理本地語(yǔ)言環(huán)境、設(shè)備大小適配等非常有幫助。 另一個(gè)新概念是content provider,數(shù)據(jù)源的抽象。先進(jìn)UI概念。Android 引入很多先進(jìn)的UI概念。包括采用XML方式來(lái)描述layout和menu,異步dialog(注意,不是Windows中MFC的同步方式的modal dialog),對(duì)動(dòng)畫(huà)的支持,包括frame-by-frame動(dòng)畫(huà),視覺(jué)轉(zhuǎn)換的漸變方式(放大、縮小,位移,旋轉(zhuǎn)、角度)。Android通過(guò) OpenGL ES支持3D圖形。OpenGL ES是C庫(kù),Android沿用了J2ME中對(duì)Open ES定義的API,具體可以參考ProAndroid 3。 在HomeUI方面。Android支持live floder(是一種小型的應(yīng)用層插件。它本身體現(xiàn)為桌面出現(xiàn)的圖標(biāo),通過(guò)點(diǎn)擊這些圖標(biāo),將出現(xiàn)一個(gè)列表框,列表框中將顯示數(shù)據(jù)信息。通過(guò)活動(dòng)目錄可以在不打開(kāi)應(yīng)用程序的情況下,在桌面就能查看其中的數(shù)據(jù)信息。)。但是隨著對(duì)home screen widget的支持,livefloder的作用漸微。Android還提供Integrated Search,可以搜索設(shè)備和網(wǎng)絡(luò)的信息,提供searchAPI。 此外還有自定義的手勢(shì)、傳感器控制、動(dòng)態(tài)配置(如根據(jù)橫豎屏進(jìn)行的排版),平板的actionbar,Drag-and-drop(Android 4.0中可用于phone和pad)等。上面的這一些大都會(huì)在Pro Android 4后面章節(jié)中詳細(xì)描述。其他。此 外還有Service組件,Media組件、Telephony組件,具體可以詳細(xì)閱讀Android SDK reference對(duì)package的說(shuō)明。 Android通過(guò)應(yīng)用的AndroidManifest.xml文件來(lái)體現(xiàn)這些概念,包括 activities的定義、service和contentprovider的注冊(cè),許可聲明等等。 目前Andriod有超過(guò)50個(gè)包和過(guò)千個(gè) class。除了andriod.*外,還包括java.*,javax.*,以及其他,如org.apache.http,org.json, ,org.xml.sax, org.xml
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 海寧廠房搬遷協(xié)議書(shū)范本
- 員工保密價(jià)格協(xié)議書(shū)范本
- 創(chuàng)新型企業(yè)財(cái)務(wù)總監(jiān)股權(quán)激勵(lì)聘用合同模板
- 車輛質(zhì)押與物流運(yùn)輸一體化合同
- 海鮮餐廳品牌合作經(jīng)營(yíng)授權(quán)合同
- 農(nóng)村集體菜地領(lǐng)種與社區(qū)服務(wù)共享合同
- 和同學(xué)的協(xié)議書(shū)范本
- 美食街餐飲加盟合作協(xié)議范本
- 礦山采礦權(quán)抵押股權(quán)融資合同范本
- 貨物運(yùn)輸合同模板
- 2025年 云南省危險(xiǎn)化學(xué)品經(jīng)營(yíng)單位安全管理人員考試練習(xí)題附答案
- 2024-2025學(xué)年四年級(jí)(下)期末數(shù)學(xué)試卷及答案西師大版2
- 2025-2030年中國(guó)高導(dǎo)磁芯行業(yè)深度研究分析報(bào)告
- 遠(yuǎn)程胎心監(jiān)護(hù)數(shù)據(jù)解讀
- 2025年 道路運(yùn)輸企業(yè)主要負(fù)責(zé)人考試模擬試卷(100題)附答案
- 2025至2030中國(guó)執(zhí)法系統(tǒng)行業(yè)經(jīng)營(yíng)效益及前景運(yùn)行態(tài)勢(shì)分析報(bào)告
- 2025年全國(guó)法醫(yī)專項(xiàng)技術(shù)考試試題及答案
- 供應(yīng)鏈公司展會(huì)策劃方案
- 南通市崇川區(qū)招聘 社區(qū)工作者筆試真題2024
- 2025年寧夏銀川市中考?xì)v史三模試卷(含答案)
- 【藝恩】出游趨勢(shì)洞察報(bào)告
評(píng)論
0/150
提交評(píng)論