版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、應(yīng)用程序基礎(chǔ)1應(yīng)用程序基礎(chǔ)應(yīng)用程序基礎(chǔ)摘要摘要roid應(yīng)用程序使用Java編程語(yǔ)言開(kāi)發(fā)。aapt工具把編譯后的Java代碼連同應(yīng)用程序所需的其他數(shù)據(jù)和資源文件一起打包到一個(gè)roid包文件中,這個(gè)文件使用.apk作為擴(kuò)展名。此文件是分發(fā)并安裝應(yīng)用程序到移動(dòng)設(shè)備的載體;是用戶(hù)下載到他們的設(shè)備的文件。單一.apk文件中的所有代碼被認(rèn)為是一個(gè)應(yīng)用程序。從多個(gè)角度來(lái)看,每個(gè)roid應(yīng)用程序都存在于它自己的世界之中:1默認(rèn)情況下,每個(gè)應(yīng)用程序均運(yùn)行
2、于它自己的Linux進(jìn)程中。當(dāng)應(yīng)用程序中的任何代碼需要被執(zhí)行時(shí),roid啟動(dòng)此進(jìn)程,而當(dāng)不再需要此進(jìn)程并且其它應(yīng)用程序又請(qǐng)求系統(tǒng)資源時(shí),則就關(guān)閉了這個(gè)進(jìn)程。2每個(gè)進(jìn)程都有其獨(dú)有的虛擬機(jī)(VM),所以應(yīng)用程序代碼與所有其它應(yīng)用程序代碼是隔離運(yùn)行的。3默認(rèn)情況下,每個(gè)應(yīng)用程序均被賦予一個(gè)唯一的Linux用戶(hù)ID,并加以權(quán)限設(shè)置,使得應(yīng)用程序的文件僅對(duì)此用戶(hù)及此應(yīng)用程序可見(jiàn)——盡管也有其它的方法使得這些文件同樣能為其他應(yīng)用程序所訪(fǎng)問(wèn)。1.11
3、.1應(yīng)用程序組件應(yīng)用程序組件roid的一個(gè)核心的特性就是一個(gè)應(yīng)用程序可以使用其它應(yīng)用程序的元素(如果那個(gè)應(yīng)用程序允許的話(huà))。例如,如果你的應(yīng)用程序需要顯示一個(gè)圖片卷動(dòng)列表,而另一個(gè)應(yīng)用程序已經(jīng)開(kāi)發(fā)了一個(gè)合用的而又允許別的應(yīng)用程序使用的話(huà),你可以直接調(diào)用那個(gè)卷動(dòng)列表來(lái)完成工作,而不用自己再開(kāi)發(fā)一個(gè)。你的應(yīng)用程序并沒(méi)有吸納或鏈接其它應(yīng)用程序的代碼。它只是在有需求的時(shí)候啟動(dòng)了其它應(yīng)用程序的那個(gè)功能部分。為達(dá)到這個(gè)目的,系統(tǒng)必須能夠在一個(gè)應(yīng)用程
4、序的任何一部分被需要時(shí)啟動(dòng)一個(gè)此應(yīng)用程序的進(jìn)程,并將那個(gè)部分的Java對(duì)象實(shí)例化。因此,不像其它大多數(shù)系統(tǒng)上的應(yīng)用程序,roid應(yīng)用程序并沒(méi)有為應(yīng)用程序提供一個(gè)單獨(dú)的入口點(diǎn)(比如說(shuō),沒(méi)有main()函數(shù)),而是為系統(tǒng)提供了可以實(shí)例化和運(yùn)行所需的必備組件。一共有四種組件類(lèi)型:(1)Activity應(yīng)用程序基礎(chǔ)3這個(gè)任務(wù)本身丌應(yīng)該由任何activity來(lái)處理,因?yàn)橛脩?hù)的期望即使在他們離開(kāi)播放器的應(yīng)用程序而已經(jīng)在開(kāi)始做別的事情時(shí),音樂(lè)仍然在繼
5、續(xù)播放。為達(dá)到這個(gè)目的,媒體播放器activity可以啟動(dòng)一個(gè)運(yùn)行于后臺(tái)的service服務(wù)。系統(tǒng)將在這個(gè)activity不再顯示于屏幕后,仍維持音樂(lè)播放的service的運(yùn)行。連接至(綁定到)一個(gè)正在運(yùn)行的service(如果service沒(méi)有運(yùn)行,則啟動(dòng)之)是可能的。連接之后,你可以通過(guò)那個(gè)service暴露出來(lái)的接口不service進(jìn)行通訊。對(duì)于音樂(lè)service來(lái)說(shuō),這個(gè)接口可以允許用戶(hù)暫停、回退、停止以及重新開(kāi)始播放。如同ac
6、tivity和其它的組件一樣,service服務(wù)運(yùn)行于應(yīng)用程序進(jìn)程的主線(xiàn)程內(nèi)。所以它不會(huì)對(duì)其它組件或者用戶(hù)界面有任何的妨礙作用,它們一般會(huì)派生一個(gè)新線(xiàn)程來(lái)執(zhí)行一些時(shí)間消耗型任務(wù)(比如音樂(lè)回放和網(wǎng)絡(luò)下載)。參見(jiàn)稍后的進(jìn)程和線(xiàn)程介紹。(3)BroadcastReceiverbroadcastreceiver是一個(gè)與注于接收廣播通知信息,并做出相應(yīng)處理的組件。許多廣播是由系統(tǒng)代碼產(chǎn)生的——例如,通知時(shí)區(qū)改變、電池電量低、拍攝了一張照片或者用戶(hù)
7、改變了語(yǔ)言選項(xiàng)。應(yīng)用程序也可以發(fā)起廣播——例如,通知其它應(yīng)用程序一些數(shù)據(jù)已經(jīng)下載到設(shè)備上并處于可用狀態(tài)。一個(gè)應(yīng)用程序可以擁有任意數(shù)量的broadcastreceiver,以對(duì)所有它認(rèn)為重要的通知信息予以各種響應(yīng)。所有的receiver均繼承自BroadcastReceiver基類(lèi)。broadcastreceiver沒(méi)有用戶(hù)界面。然而,它們可以啟動(dòng)一個(gè)activity或者service來(lái)響應(yīng)它們收到的信息,當(dāng)然也可以使用Notificat
8、ionManager來(lái)通知用戶(hù)。通知可以用多種方式來(lái)吸引用戶(hù)的注意力──閃動(dòng)背光燈、震動(dòng)設(shè)備、播放聲音等等。通知一般是在狀態(tài)欄上放一個(gè)持麗的圖標(biāo),用戶(hù)可以點(diǎn)擊打開(kāi)它并獲取所要消息。(4)Contentprovidercontentprovider將一些特定的應(yīng)用程序數(shù)據(jù)供給其它應(yīng)用程序使用處理。數(shù)據(jù)可以存儲(chǔ)于文件系統(tǒng)、SQLite數(shù)據(jù)庫(kù)或其它有意丿的方式。contentprovider繼承于ContentProvider基類(lèi),實(shí)現(xiàn)了一套
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- android應(yīng)用程序基礎(chǔ)
- 外文翻譯---應(yīng)用程序基礎(chǔ)android developers
- android手機(jī)外文翻譯---應(yīng)用程序基礎(chǔ)android developers
- 修改應(yīng)用程序外觀
- [學(xué)習(xí)]網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)--html導(dǎo)論(基礎(chǔ)篇)
- 開(kāi)發(fā)xml應(yīng)用程序-畢業(yè)論文外文翻譯
- 20.1統(tǒng)計(jì)技術(shù)應(yīng)用程序
- 打包所有的應(yīng)用程序
- autolisp 應(yīng)用程序源代碼
- gps應(yīng)用程序設(shè)計(jì)
- 驅(qū)動(dòng)程序與應(yīng)用程序的接口
- windowsphone的應(yīng)用程序認(rèn)證要求
- 用uml設(shè)計(jì)java應(yīng)用程序
- 應(yīng)用程序調(diào)用驅(qū)動(dòng)的方式
- windows應(yīng)用程序界面的設(shè)計(jì)
- web應(yīng)用程序設(shè)計(jì)(aspnet)
- web應(yīng)用程序完全測(cè)試指南
- vfp應(yīng)用程序設(shè)計(jì)實(shí)例
- 畢業(yè)論文--基于loadrunner的web應(yīng)用程序測(cè)試方法
- 2創(chuàng)建應(yīng)用程序的過(guò)程
評(píng)論
0/150
提交評(píng)論