Android平臺(tái)手機(jī)文件監(jiān)控系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)論文_第1頁(yè)
Android平臺(tái)手機(jī)文件監(jiān)控系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)論文_第2頁(yè)
Android平臺(tái)手機(jī)文件監(jiān)控系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)論文_第3頁(yè)
Android平臺(tái)手機(jī)文件監(jiān)控系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)論文_第4頁(yè)
Android平臺(tái)手機(jī)文件監(jiān)控系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)論文_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 PAGE 38本科畢業(yè)論論文 論文題題Andrroid 平臺(tái)手機(jī)機(jī)文件監(jiān)控控系統(tǒng)的設(shè)設(shè)計(jì)與開(kāi)發(fā)發(fā)學(xué) 院計(jì)算機(jī)機(jī)科學(xué)與教教育軟件學(xué)學(xué)院 專 業(yè) 班 級(jí) 姓 名 學(xué) 號(hào) 指導(dǎo)教師 填表日期 Androoid 平平臺(tái)手機(jī)文文件監(jiān)控系系統(tǒng)的設(shè)計(jì)計(jì)與開(kāi)發(fā)摘要 隨隨著Anddroidd 智能手手機(jī)的普及及,手機(jī)的的安全問(wèn)題題也就接踵踵而來(lái)。我我們都知道道,保護(hù)系系統(tǒng)安全的的一個(gè)重要要組成部分分就是保護(hù)護(hù)文件的安安全,所以以,通過(guò)文文件監(jiān)控這這個(gè)方法來(lái)來(lái)時(shí)刻監(jiān)控控文件是否否完整是保保護(hù)系統(tǒng)安安全以及發(fā)發(fā)生安全問(wèn)問(wèn)題后進(jìn)行行初步評(píng)估估的一個(gè)重重要基礎(chǔ)。不僅如此此,在個(gè)人人私隱方面面,監(jiān)控文文件,可以以讓用戶

2、知知道自己手手機(jī)內(nèi)的文文件是否在在自己不知知情的情況況下被他人人查看,是是一個(gè)保護(hù)護(hù)個(gè)人私隱隱的有效途途徑。本文文研究Anndroiid 文件件系統(tǒng),發(fā)發(fā)現(xiàn)Anddroidd系統(tǒng)APPI提供了了FileeObseerverr抽象類,這這是一個(gè)基基于Linnux的IINotiify機(jī)制制的類,這這個(gè)類可以以用來(lái)監(jiān)聽(tīng)聽(tīng)系統(tǒng)中的的文件。文文章詳細(xì)說(shuō)說(shuō)明如何通通過(guò)這個(gè)類類來(lái)實(shí)現(xiàn)對(duì)對(duì)Andrroid 系統(tǒng)中的的多個(gè)文件件或文件夾夾進(jìn)行有效效的監(jiān)控,實(shí)實(shí)現(xiàn)了一個(gè)個(gè)Andrroid平平臺(tái)手機(jī)文文件監(jiān)控系系統(tǒng),從而而讓我們可可以通過(guò)監(jiān)監(jiān)控系統(tǒng)查查看到文件件發(fā)生打開(kāi)開(kāi)、刪除、修改等事事件。關(guān)鍵詞 Andrroi

3、d 智能手機(jī)機(jī);文件監(jiān)監(jiān)控;FiileObbservver;JJavaABSTRRACT Wiith tthe ppopullaritty off thee Anddroidd smaart pphonee, thhe phhones seecuriity pprobllems willl folllow.We aall kknow thatt to prottect an iimporrtantt parrt off sysstem secuurityy is to pproteect ddocumment secuurityy, fiile mmonittorinng meethodd t

4、o moniitor filee at all timees iss commplette prrotecctionn sysstem safeety aand ssecurrity probblemss an impoortannt baasis for a prrelimminarry asssesssmentt. Mooreovver, in ttermss of perssonall priivacyy, coontrool fiile, you can let the userr knoow thhat tthe ffiless witthin theiir owwn ceell p

5、phonee on theiir owwn wiithouut thhe knnowleedge of ootherrs too vieew, iis ann efffectiive wway tto prrotecct peersonnal pprivaacy. In tthis papeer, tthe AAndrooid ffile systtem, the Andrroid systtem AAPI pproviides FileeObseerverr absstracct cllass, whiich iis a Linuux-baased inottify mechhanissm

6、cllass, thiis cllass can be uused in tthe mmonittorinng syystemm fille. TThe aarticcle ddetaiiled desccripttion of hhow tto acchievve thhis cclasss Anddroidd sysstem in mmultiiple filees orr follderss forr efffectiive mmonittorinng, aan Anndroiid pllatfoorm ffor mmobille phhoness fille moonitooringg

7、 sysstem, so thatt we can throough the moniitoriing ssysteem too vieew fiile iis oppen, deleete, modiify aand ootherr eveents.KEYWOORDS Anddroidd smarrtphoone;Filee Monnitorr;FileeObseerverr;Javva目錄TOC o 1-3 h z u HYPERLINK l _Toc356681190 1 前 言言 PAGEREF _Toc356681190 h 1 HYPERLINK l _Toc356681191 1

8、.1課題題背景 PAGEREF _Toc356681191 h 1 HYPERLINK l _Toc356681192 1.2 研研究現(xiàn)狀 PAGEREF _Toc356681192 h 2 HYPERLINK l _Toc356681193 2 相關(guān)介介紹 PAGEREF _Toc356681193 h 2 HYPERLINK l _Toc356681194 2.1 AAndrooid系統(tǒng)統(tǒng)基本介紹紹2 HYPERLINK l _Toc356681195 2.1.11 什么是是Androoid?2 HYPERLINK l _Toc356681196 2.1.22 Anddroidd的由來(lái) P

9、AGEREF _Toc356681196 h 3 HYPERLINK l _Toc356681197 2.1.33 Anddroidd系統(tǒng)的特特點(diǎn)與優(yōu)勢(shì)勢(shì) PAGEREF _Toc356681197 h 4 HYPERLINK l _Toc356681198 2.1.44 Anddroidd開(kāi)發(fā)環(huán)境境的配置 PAGEREF _Toc356681198 h 4 HYPERLINK l _Toc356681199 2.2 LLinuxx的INottify機(jī)機(jī)制 PAGEREF _Toc356681199 h 6 HYPERLINK l _Toc356681200 2.2.11 INootifyy機(jī)

10、制基本本介紹 PAGEREF _Toc356681200 h 6 HYPERLINK l _Toc356681201 2.2.22 FilleObsserveer類作用用 PAGEREF _Toc356681201 h 7 HYPERLINK l _Toc356681202 2.2.33 FilleObsserveer類的基基本使用方方法 PAGEREF _Toc356681202 h 8 HYPERLINK l _Toc356681203 2.3 jjava程程序設(shè)計(jì)語(yǔ)語(yǔ)言 PAGEREF _Toc356681203 h 11 HYPERLINK l _Toc356681204 3.系統(tǒng)設(shè)設(shè)

11、計(jì) PAGEREF _Toc356681204 h 11 HYPERLINK l _Toc356681205 3.1 課課題來(lái)源 PAGEREF _Toc356681205 h 11 HYPERLINK l _Toc356681206 3.2 業(yè)業(yè)務(wù)需求 PAGEREF _Toc356681206 h 12 HYPERLINK l _Toc356681207 4.系統(tǒng)分分析與設(shè)計(jì)計(jì)方案 PAGEREF _Toc356681207 h 13 HYPERLINK l _Toc356681208 4.1 文文件監(jiān)控系系統(tǒng)的總體體設(shè)計(jì)思想想 PAGEREF _Toc356681208 h 13 HYP

12、ERLINK l _Toc356681209 4.1.11 實(shí)現(xiàn)思思想 PAGEREF _Toc356681209 h 13 HYPERLINK l _Toc356681210 4.1.22 實(shí)現(xiàn)步步驟 PAGEREF _Toc356681210 h 13 HYPERLINK l _Toc356681211 系統(tǒng)流程圖圖: PAGEREF _Toc356681211 h 15 HYPERLINK l _Toc356681212 5.監(jiān)控系系統(tǒng)各功能能模塊 PAGEREF _Toc356681212 h 15 HYPERLINK l _Toc356681213 5.1 開(kāi)開(kāi)始界面模模塊 PAGE

13、REF _Toc356681213 h 15 HYPERLINK l _Toc356681214 5.2 監(jiān)監(jiān)控路徑選選擇模塊 PAGEREF _Toc356681214 h 16 HYPERLINK l _Toc356681215 5.3 監(jiān)監(jiān)控模塊 PAGEREF _Toc356681215 h 17 HYPERLINK l _Toc356681216 5.4 日日志查詢模模塊 PAGEREF _Toc356681216 h 18 HYPERLINK l _Toc356681217 6.各個(gè)類類的作用 PAGEREF _Toc356681217 h 18 HYPERLINK l _Toc3

14、56681218 總類: PAGEREF _Toc356681218 h 119 HYPERLINK l _Toc356681219 6.1 MMainAActivvity類類 PAGEREF _Toc356681219 h 19 HYPERLINK l _Toc356681220 6.2 FFileMMonittorSeervicce 類 PAGEREF _Toc356681220 h 20 HYPERLINK l _Toc356681221 6.3 MMyFilleObsserveer 類 PAGEREF _Toc356681221 h 21 HYPERLINK l _Toc3566812

15、22 6.4 UUtiliity 類類 PAGEREF _Toc356681222 h 21 HYPERLINK l _Toc356681223 6.5 NNaviggatioonVieew 類 PAGEREF _Toc356681223 h 22 HYPERLINK l _Toc356681224 6.7 FFileLLayouut 類 PAGEREF _Toc356681224 h 22 HYPERLINK l _Toc356681225 6.8 FFileMManaggerLaayoutt 類 PAGEREF _Toc356681225 h 23 HYPERLINK l _Toc3566

16、81226 7.系統(tǒng)設(shè)設(shè)計(jì)與實(shí)現(xiàn)現(xiàn) PAGEREF _Toc356681226 h 24 HYPERLINK l _Toc356681227 7.1 開(kāi)開(kāi)發(fā)環(huán)境工工具 PAGEREF _Toc356681227 h 24 HYPERLINK l _Toc356681228 7.2 硬硬件環(huán)境 PAGEREF _Toc356681228 h 25 HYPERLINK l _Toc356681229 7.3 監(jiān)監(jiān)控系統(tǒng)功功能測(cè)試 PAGEREF _Toc356681229 h 25 HYPERLINK l _Toc356681230 7.3.11在模擬器器中測(cè)試: PAGEREF _Toc3566

17、81230 h 25 HYPERLINK l _Toc356681231 7.3.22在andrroid手手機(jī)上測(cè)試試 PAGEREF _Toc356681231 h 27 HYPERLINK l _Toc356681232 7.3.33測(cè)試結(jié)論論 PAGEREF _Toc356681232 h 28 HYPERLINK l _Toc356681233 8 總結(jié) PAGEREF _Toc356681233 h 29 HYPERLINK l _Toc356681234 8.1 畢畢業(yè)設(shè)計(jì)總總結(jié) PAGEREF _Toc356681234 h 29 HYPERLINK l _Toc35668123

18、5 8.2 經(jīng)經(jīng)驗(yàn)和感想想 PAGEREF _Toc356681235 h 29 HYPERLINK l _Toc356681236 參考文獻(xiàn) PAGEREF _Toc356681236 h 31 HYPERLINK l _Toc356681237 致謝 PAGEREF _Toc356681237 h 322Androoid 平平臺(tái)手機(jī)文文件監(jiān)控系系統(tǒng)的設(shè)計(jì)計(jì)與開(kāi)發(fā)1 前 言言1.1課題題背景 隨著科技技的發(fā)展,以以及近年來(lái)來(lái)各種手機(jī)機(jī)操作系統(tǒng)統(tǒng)的不斷出出現(xiàn),可以以說(shuō),手機(jī)機(jī)的功能是是越來(lái)越多多也越來(lái)越越完善。因因此,手機(jī)機(jī)也更加像像是一臺(tái)移移動(dòng)微型計(jì)計(jì)算機(jī)。在在日常生活活中,我們們使用手機(jī)機(jī)

19、的時(shí)間越越來(lái)越多,甚甚至在某些些方面,手手機(jī)還代替替了個(gè)人電電腦做到以以往只能用用個(gè)人電腦腦才能做的的事情,譬譬如:收發(fā)發(fā)郵件,查查看文檔,網(wǎng)網(wǎng)上購(gòu)物等等等。然而而,隨著對(duì)對(duì)智能手機(jī)機(jī)的依賴,智智能手機(jī)不不僅僅是一一個(gè)手機(jī)的的存在,更更是一個(gè)存存放重要個(gè)個(gè)人信息的的一個(gè)存儲(chǔ)儲(chǔ)器,越來(lái)來(lái)越多的人人都在智能能手機(jī)上存存放了一些些個(gè)人信息息,便于日日常生活的的需要,例例如:網(wǎng)上上購(gòu)物的網(wǎng)網(wǎng)銀賬號(hào)等等。一旦這這些信息泄泄露或損壞壞,將對(duì)手手機(jī)用戶造造成無(wú)法估估計(jì)的損失失。另一方面,智智能手機(jī)的的越發(fā)普及及,針對(duì)智智能手機(jī)的的惡意軟件件也不斷地地出現(xiàn)。這這些惡意軟軟件就像計(jì)計(jì)算機(jī)軟件件一般,包包含了各種

20、種木馬、蠕蠕蟲、間諜諜軟件或其其他病毒,給給手機(jī)上的的用戶信息息安全帶來(lái)來(lái)了極大的的威脅。我我們都知道道,如何維維護(hù)計(jì)算機(jī)機(jī)系統(tǒng)的安安全有很多多種途徑,其中系統(tǒng)統(tǒng)中的文件件安全問(wèn)題題是不可忽忽視的。通通過(guò)文件監(jiān)監(jiān)控來(lái)時(shí)刻刻監(jiān)控文件件是否完整整是保護(hù)系系統(tǒng)安全以以及發(fā)生安安全問(wèn)題后后進(jìn)行初步步評(píng)估的一一個(gè)有效方方法。除此此之外,監(jiān)監(jiān)控手機(jī)文文件在一定定程度上也也是保護(hù)了了用戶的私私隱。例如如,手機(jī)內(nèi)內(nèi)的文件在在用戶不知知情的情況況下被別人人偷看,那那么,通過(guò)過(guò)監(jiān)控系統(tǒng)統(tǒng),用戶可可以知道自自己的什么么私隱在什什么時(shí)候被被其他人知知道,有了了初步的損損失估算。為此,對(duì)智智能手機(jī)上上的文件進(jìn)進(jìn)行監(jiān)控是

21、是必不可少少的。論文文通過(guò)對(duì)AAndrooid的學(xué)學(xué)習(xí)和研究究后,發(fā)現(xiàn)現(xiàn)Andrroid系系統(tǒng)APII里面有著著一個(gè)名叫叫FileeObseerverr的抽象類,這這是一個(gè)基基于Linnux的IINotiify機(jī)制制的類,這這個(gè)類可以以用來(lái)監(jiān)聽(tīng)聽(tīng)系統(tǒng)中的的某個(gè)文件件。以此為為基礎(chǔ),本本文設(shè)計(jì)實(shí)實(shí)現(xiàn)了一個(gè)個(gè)Andrroid 平臺(tái)手機(jī)機(jī)文件監(jiān)控控系統(tǒng)。1.2 研研究現(xiàn)狀 Andrroid中中文名稱為為安卓,實(shí)實(shí)際上是一個(gè)基于于Linuux的手機(jī)系統(tǒng)統(tǒng)的名稱。在20007年111月5日,該該系統(tǒng)由GGooglle正式發(fā)發(fā)布。平臺(tái)臺(tái)由四部分分組成,分分別是操作作系統(tǒng)、中中間件、用用戶界面和和應(yīng)用軟件件

22、,號(hào)稱是是第一個(gè)為為移動(dòng)平臺(tái)臺(tái)專門打造造的真正開(kāi)開(kāi)放以及完完整的移動(dòng)動(dòng)軟件。隨著Anddroidd平臺(tái)的普普及以及該該平臺(tái)的開(kāi)開(kāi)放性,許許多在Anndroiid平臺(tái)上上運(yùn)行的軟軟件也越來(lái)來(lái)越多。當(dāng)當(dāng)然,除了了那些比較較流行的游游戲類和一一些網(wǎng)絡(luò)聊聊天類等軟軟件,殺毒毒軟件也日日新月異,還還有一些比比較實(shí)用的的文件管理理的軟件??梢哉f(shuō),AAndrooid平臺(tái)臺(tái)上該有的的軟件基本本都有了,那那些不該有有的也有所所出現(xiàn)。那么,對(duì)于于文件監(jiān)控控這個(gè)模塊塊的軟件,是是不是就沒(méi)沒(méi)有了它的的存在價(jià)值值呢?就如如上面所說(shuō)說(shuō)的,文件件監(jiān)控是為為了保證數(shù)數(shù)據(jù)的完整整性以及用用于災(zāi)情評(píng)評(píng)估的。但但是,有人人會(huì)說(shuō),殺

23、殺毒軟件起起到的作用用不是更加加直接?可可是,殺毒毒軟件是基基本作用是是用于殺毒毒以及維護(hù)護(hù)系統(tǒng)的安安全的,對(duì)對(duì)于哪個(gè)文文件的損壞壞或者被修修改,是無(wú)無(wú)法知道的的,這時(shí)候候,文件監(jiān)監(jiān)控就起到到這個(gè)作用用。系統(tǒng)在在發(fā)生病毒毒感染后,某某些文件也也許會(huì)被修修改或者損損壞,通過(guò)過(guò)文件監(jiān)控控可以得知知是哪個(gè)文文件被打開(kāi)開(kāi)過(guò)、受到到損壞或者者被修改。通過(guò)得知知的結(jié)果,手手機(jī)用戶可可以以此評(píng)評(píng)估這次中中毒可能要要面臨的損損失大概是是怎么樣的的。同時(shí),在日日常生活中中,手機(jī)被被不是該手手機(jī)用戶的的人所查看看,手機(jī)用用戶可以在在事后通過(guò)過(guò)文件監(jiān)控控得知自己己手機(jī)的哪哪個(gè)文檔被被打開(kāi)查看看過(guò),這樣樣可以起到到一

24、定的保保護(hù)私隱的的作用。相信,以后后會(huì)出現(xiàn)一一些功能更更加全面的的文件管理理方面的軟軟件,那些些軟件除了了能對(duì)系統(tǒng)統(tǒng)內(nèi)的所有有文件進(jìn)行行管理的同同時(shí),也有有著監(jiān)控的的功能,甚甚至是對(duì)某某個(gè)文件進(jìn)進(jìn)行加密。這樣的軟軟件,對(duì)于于手機(jī)用戶戶來(lái)說(shuō),無(wú)無(wú)疑是一個(gè)個(gè)不錯(cuò)的選選擇。 2 相關(guān)介介紹2.1 AAndrooid系統(tǒng)統(tǒng)基本介紹紹2.1.11 什么是是Andrroid? Anddroidd,簡(jiǎn)單來(lái)來(lái)說(shuō),是一一個(gè)開(kāi)源手手機(jī)系統(tǒng)的的名稱。用用過(guò)Anddroidd系統(tǒng)的人人都會(huì)看到到一個(gè)類似似機(jī)器人的的圖標(biāo),這這實(shí)際上就就是Anddroidd原來(lái)的意意思。在22007年年11月55日,該系系統(tǒng)由Gooog

25、lee正式發(fā)布布。平臺(tái)由由四部分組組成,分別別是操作系系統(tǒng)、中間間件、用戶戶界面和應(yīng)應(yīng)用軟件,號(hào)號(hào)稱是第一一個(gè)為移動(dòng)動(dòng)平臺(tái)專門門打造的真真正開(kāi)放以以及完整的的移動(dòng)軟件件。簡(jiǎn)單地說(shuō),Anndroiid是與jjava、symbbian、winddows mobiile、iios等并并駕齊驅(qū)在在手機(jī)市場(chǎng)場(chǎng)上的一個(gè)個(gè)手機(jī)操作作系統(tǒng)平臺(tái)臺(tái)。在Goooglee發(fā)布后的的一年,AAndrooid正式式興起,而而且在很短短的時(shí)間內(nèi)內(nèi)就迅速崛崛起,成為為了20110年最熱熱門的手機(jī)機(jī)操作平臺(tái)臺(tái)。2.1.22 Androoid的由由來(lái)Androoid(中中文名為:安卓)美美國(guó)的一家家成立于22003年年的公司,它

26、它的創(chuàng)辦人人一共有三三位,分別別是Anddy Ruubin,AAndy McFaaddenn以及Riicharrd Miiner Chriis Whhite。這家公司司的主要業(yè)業(yè)務(wù)為有兩兩個(gè),是手手機(jī)軟件和和手機(jī)操作作系統(tǒng)。Andy Rubiin創(chuàng)立有有兩個(gè)手機(jī)機(jī)操作系統(tǒng)統(tǒng)公司:DDangeer和Anndroiid。曾經(jīng)經(jīng),Anddy把Daangerr 和Anndroiid分別以以5億和4千千萬(wàn)美元分分別賣給微微軟和Goooglee。在20007年111月5日日,該系統(tǒng)統(tǒng)由Gooogle正正式發(fā)布。Andrroid平平臺(tái)一共由由四部分組組成:操作作系統(tǒng)(底底層)、界界面(用戶戶看到的部部分)、

27、應(yīng)用軟件件以及中間間件。同時(shí)時(shí),Gooogle認(rèn)認(rèn)為Anddroidd是第一個(gè)個(gè)為移動(dòng)平平臺(tái)專門打打造的操作作系統(tǒng),具具有開(kāi)放性性以及完整整性。Androoid采用用的是一種種名叫軟件件堆層的架架構(gòu),這種種架構(gòu)又叫叫做軟件疊疊成架構(gòu),這這種架構(gòu)主主要分為三三部分。分分別是底層層、中間層層以及最上上層。其中中,以liinux作作為內(nèi)核工工作基礎(chǔ)的的是底層,只只提供最基基本的那些些功能。并并且這部分分的實(shí)現(xiàn)是是由C語(yǔ)言言開(kāi)發(fā)的。至于中間間層,卻是是由C+語(yǔ)言開(kāi)發(fā)發(fā)。這部分分主要包括括函數(shù)庫(kù)和和虛擬機(jī)。最后,則則是最上層層,通俗來(lái)來(lái)說(shuō),這部部分相當(dāng)于于我們平常常用的各種種手機(jī)應(yīng)用用軟件。這這些應(yīng)用軟

28、軟件大部分分由各個(gè)公公司自行開(kāi)開(kāi)發(fā),例如如通信程序序、短信程程序等等。還有,最最上層與前前兩層的開(kāi)開(kāi)發(fā)語(yǔ)言又又不一樣,是是用javva編寫程程序的。從Googgle發(fā)布布andrroid的的那天,GGooglle就和各各種與移動(dòng)動(dòng)設(shè)備相關(guān)關(guān)的產(chǎn)業(yè)建建立起深層層次的合作作關(guān)系,例例如軟件和和硬件開(kāi)發(fā)發(fā)商、設(shè)備備制造商、電信運(yùn)行行商等等。同時(shí),GGooglle也希望望通過(guò)這樣樣的合作,建建立起一個(gè)個(gè)具有標(biāo)準(zhǔn)準(zhǔn)化和開(kāi)放放式特點(diǎn)的的手機(jī)軟件件平臺(tái),并并且形成一一個(gè)良好的的生態(tài)系統(tǒng)統(tǒng)。2.1.33 Androoid系統(tǒng)統(tǒng)的特點(diǎn)與與優(yōu)勢(shì) Anddroidd系統(tǒng)是一一個(gè)完全開(kāi)開(kāi)放,完全全開(kāi)源,完完全的自由由

29、式系統(tǒng)。應(yīng)用程序序可以并行行運(yùn)行。方方便,快捷捷的獲得應(yīng)應(yīng)用程序。倘若說(shuō)之前前的Symmbiann系統(tǒng)以及及Winddows Mobiile系統(tǒng)統(tǒng)都是按照照別人的意意思來(lái)生產(chǎn)產(chǎn)手機(jī)的話話,那么AAndrooid系統(tǒng)統(tǒng)則是讓廠商們的的徹底地放放開(kāi)了手腳腳。這也是是為什么在在Andrroid系系統(tǒng)發(fā)布不不到一年的的時(shí)間里, HTCC Sennce、MMOTO Blurr等眾多讓讓人稱贊的的自定義UUI就出現(xiàn)在我們們的視線里里的原因。大家對(duì)于于這些優(yōu)秀秀的UI可可以說(shuō)是稱稱贊不絕,同同時(shí)對(duì)于發(fā)發(fā)展商來(lái)說(shuō)說(shuō),這有利利于他們宣宣揚(yáng)自己的的那些品牌牌理念。所所以,越來(lái)來(lái)越多的人人們認(rèn)可了了這一個(gè)名名叫An

30、ddroidd的移動(dòng)平平臺(tái)系統(tǒng)。 還記得22008年年以前,我我們到市面面上買一臺(tái)臺(tái)功能比較較健全的手手機(jī),花費(fèi)費(fèi)可是很大大的。然而而,對(duì)比現(xiàn)現(xiàn)在,買一一臺(tái)功能全全面的智能能手機(jī)的價(jià)價(jià)格卻不是是很高。很很多人會(huì)說(shuō)說(shuō),時(shí)代進(jìn)進(jìn)步了,科科技發(fā)達(dá)了了。這種說(shuō)說(shuō)法很對(duì),但但是不準(zhǔn)確確。Anddroidd的出現(xiàn),可可以說(shuō)是時(shí)時(shí)代的不斷斷進(jìn)步的結(jié)結(jié)果,其實(shí)實(shí),最大的的原因是aandrooid平臺(tái)臺(tái)的開(kāi)源。因?yàn)?,智智能手機(jī)的的操作系統(tǒng)統(tǒng)的授權(quán)費(fèi)費(fèi)可是不低低的。正是是由于Anndroiid的這種種開(kāi)源性,廣廣大的廠商商在利用AAndrooid平臺(tái)臺(tái)進(jìn)行手機(jī)機(jī)開(kāi)發(fā)的時(shí)時(shí)候不再需需要支付過(guò)過(guò)去那很貴貴的授權(quán)費(fèi)費(fèi)用

31、??梢砸哉f(shuō),這是是很大程度度上減少了了廠商們的的開(kāi)發(fā)成本本,這樣,也也就有越來(lái)來(lái)越多的廠廠商愿意投投資開(kāi)發(fā)AAndrooid平臺(tái)臺(tái)的移動(dòng)設(shè)設(shè)備。另一一個(gè)原因是是20099年發(fā)生了了金融風(fēng)暴暴,很多廠廠商都縮減減了開(kāi)支,這這時(shí)候anndroiid的出現(xiàn)現(xiàn)就為他們們帶來(lái)了一一條新的道道路。2.1.44 Anddroidd開(kāi)發(fā)環(huán)境境的配置 1.安安裝JDKK 在官網(wǎng)上找到到JDK的的安裝包并并把安裝包包下載下來(lái)來(lái),并且進(jìn)進(jìn)行安裝。安裝完后后,可以通通過(guò)打開(kāi)wwindoows系統(tǒng)統(tǒng)的命令提提示符,輸輸入javva vversiion,如如果安裝成成功,會(huì)看看到JDKK的版本。 2安安裝Ecllipse

32、e 在官網(wǎng)網(wǎng)上找到EEclippse的壓壓縮包,解解壓后就可可以使用了了。如下圖圖,是Ecclipsse的其中中一個(gè)版本本。 3. 安裝Anndroiid SDDK在Andrroid Deveelopeers下載載andrroid-sdk_r05-winddows.zip,解解壓后運(yùn)行行安裝。 4.安安裝ADTT 打開(kāi)開(kāi)Ecliipse,打打開(kāi)菜單“helppInsttall New Softtwaree”。點(diǎn)擊AAdd按鈕鈕,具體操操作請(qǐng)看下下面圖片介介紹。 5.創(chuàng)創(chuàng)建AVDD(為了以以后配置aandrooid的模模擬器) 在在Ecliipse中中,進(jìn)行一一下操作:Winddows Annd

33、roiid SDDK annd AVVD MaanageerVirttual DeviicesNew填入Naame,選選擇Tarrget的的API(SD CCard大大小任意,SSkin隨隨便選)Harddwaree目前保持持默認(rèn)值Creaate AAVD完成以上操操作即可完完成創(chuàng)建AAVD。2.2 LLinuxx的INootifyy機(jī)制2.2.11 INootifyy機(jī)制基本本介紹 1.什什么是Innotiffy 平常,設(shè)備備的運(yùn)行維維護(hù)過(guò)程中中,我們很很多時(shí)候是是需要備份份一些文件件的,或者者對(duì)一些諸諸如重要的的配置文件件進(jìn)行監(jiān)控控。其中l(wèi)innux內(nèi)核核的inootifyy機(jī)制,就就能實(shí)

34、現(xiàn)對(duì)對(duì)文件的監(jiān)監(jiān)控。 通過(guò)查查看資料,IInotiify是一一個(gè)具有強(qiáng)強(qiáng)大、細(xì)粒粒度和異步步特點(diǎn)的機(jī)機(jī)制。實(shí)際際上,就是是一種基于于inodde級(jí)別文文件系統(tǒng)監(jiān)監(jiān)控技術(shù)。很多各種種各樣的文文件監(jiān)控需需求,它都都能夠很好好地完成,不不僅是性能能,在安全全方面也同同樣出色。對(duì)于那些被被監(jiān)視的目目標(biāo),Innotiffy是不需需要打開(kāi)它它們的文件件描述符的的。同時(shí),當(dāng)當(dāng)那些被監(jiān)監(jiān)控的目標(biāo)標(biāo)是在可移移動(dòng)的介質(zhì)質(zhì)里,這個(gè)個(gè)機(jī)制在uumounnt那個(gè)可可移動(dòng)介質(zhì)質(zhì)上的文件件系統(tǒng)后,那那些與文件件對(duì)應(yīng)的wwatchh就會(huì)被自自動(dòng)刪除,這這時(shí)候會(huì)產(chǎn)產(chǎn)生一個(gè)uumounnt的事件件。以下是Innotiffy機(jī)制的

35、的特點(diǎn):Inotiify 不不僅可以監(jiān)監(jiān)視文件,而而且可以監(jiān)監(jiān)視目錄。Inotiify 使使用系統(tǒng)調(diào)調(diào)用卻不是是 SIGGIO 來(lái)來(lái)通知文件件系統(tǒng)事件件。Inotiify的接接口是通過(guò)過(guò)使用文件件的描述符符。所以,IInotiify監(jiān)控控文件的變變化時(shí),是是可以使用用通常的文文件I/OO 操作的的,例如:seleect 和和 polll。2.Inootifyy 可監(jiān)視視的文件系系統(tǒng)事件1、IN_ACCEESS : 文件被被訪問(wèn)2、IN_MODIIFY : 文件被被寫入東西西3、IN_ATTRRIB : 文件屬屬性被修改改4、IN_CLOSSE_WRRITE : 可寫寫的文件被關(guān)閉閉5、IN_C

36、LOSSE_NOOWRITTE : 不可寫的的文件被關(guān)閉閉6、IN_OPENN : 文文件被打開(kāi)開(kāi)7、IN_MOVEED_FRROM : 文件被被移走,如如 mv8、IN_MOVEED_TOO : 文文件被移來(lái)來(lái),如 mmv、cpp9、IN_CREAATE : 創(chuàng)建新新文件10、INN_DELLETE : 文件件被刪除,如如 rm11、INN_DELLETE_SELFF : 可可執(zhí)行文件件自己刪除除了自己(執(zhí)執(zhí)行過(guò)程中中)12、INN_MOVVE_SEELF : 可執(zhí)行行文件自移移動(dòng)(移動(dòng)動(dòng)過(guò)程中)13、INN_UNMMOUNTT : 宿宿主文件系系統(tǒng)被 uumounnt14、INN_CLOO

37、SE : 文件被被關(guān)閉,等等同于(IIN_CLLOSE_WRITTE | IN_CCLOSEE_NOWWRITEE)15、INN_MOVVE : 文件被移移動(dòng),等同同于(INN_MOVVED_FFROM | INN_MOVVED_TTO)2.2.22 FileeObseerverr類作用 1.概述:FileOObserrver類類是在Anndroiid的appi中,實(shí)實(shí)際上,這這個(gè)類是基基于linnux IInotiify機(jī)制制的。主要要用于監(jiān)控控文件的一一些事件,例例如文件被被訪問(wèn)創(chuàng)建建、修改、刪除、移移動(dòng)等。FileOObserrver是是個(gè)抽象類類,所以必必須繼承它它才能使用用。通過(guò)查查

38、看Anddroidd apii文檔,得得知FilleObsserveer監(jiān)聽(tīng)的的對(duì)象可以以是一個(gè)單單獨(dú)的文件件又或者是一個(gè)個(gè)文件夾。當(dāng)監(jiān)視的的是一個(gè)文文件夾,那那么當(dāng)該文件夾夾下所有的的文件和子子目錄發(fā)生生事件時(shí),F(xiàn)FileOObserrver都都會(huì)被觸發(fā)發(fā)。2.監(jiān)聽(tīng)的的事件類型型:1、ACCCESS,即即文件被訪訪問(wèn)。2、MODDIFY,文文件被修改改。3、ATTTRIB,文文件屬性被被修改,如如 chmmod、cchownn、touuch 等等。4、CLOOSE_WWRITEE,可寫文文件被 cclosee。5、CLOOSE_NNOWRIITE,不不可寫文件件被 cllose。6、OPEE

39、N,文件件被 oppen。7、MOVVED_FFROM,文文件被移走走,如 mmv。8、MOVVED_TTO,文件件被移來(lái),如如 mv、cp。9、CREEATE,創(chuàng)創(chuàng)建新文件件。10、DEELETEE,文件被被刪除,如如 rm。11、DEELETEE_SELLF,自刪刪除,即一一個(gè)可執(zhí)行行文件在執(zhí)執(zhí)行時(shí)刪除除自己。12、MOOVE_SSELF,自自移動(dòng),即即一個(gè)可執(zhí)執(zhí)行文件在在執(zhí)行時(shí)移移動(dòng)自己。13、CLLOSE,文文件被關(guān)閉閉,等同于于(IN_CLOSSE_WRRITE | INN_CLOOSE_NNOWRIITE)。14、ALLL_EVVENTSS,包括上上面的所有有事件。 2.2.33

40、FileeObseerverr類的基本本使用方法法當(dāng)我們要對(duì)對(duì)一個(gè)文件件或者文件件夾進(jìn)行監(jiān)監(jiān)聽(tīng)的時(shí)候候,我們可可以使用aandrooid aapi中的的andrroid.os.FFileOObserrver這這個(gè)抽象類類。如何實(shí)現(xiàn)一一個(gè)FilleObsserveer:FileOObserrver是是個(gè)抽象類類,必須繼繼承它才能能使用。這這時(shí)候,我我們可以新新建一個(gè)類類通過(guò)exxtendds關(guān)鍵字字來(lái)繼承 FileeObseerverr 這個(gè)類類。然后覆覆蓋其構(gòu)造造器,最后后覆蓋onnEvennt(innt evvent,Striing ppath)方法:例如:publiic cllass My

41、FilleObsserveer exxtendds FiileObbservver /* ppath 是所監(jiān)聽(tīng)聽(tīng)的文件夾夾或者文件件名。 */ ppubliic MyyFileeObseerverr (Sttringg patth) suuper(pathh); Overrridee ppubliic vooid oonEveent(iint eeventt, Sttringg patth) 監(jiān)聽(tīng)你所關(guān)關(guān)心的事件件: 在onnEvennt(innt evvent,Striing ppath)中,我們們可以通過(guò)過(guò)匹配evvent的的值,這樣樣,就可以以捕獲你想想要捕獲的的已經(jīng)發(fā)生生的事件。 例如

42、: pubblic voidd onEEventt(intt eveent, Striing ppath) swwitchh(eveent) caase aandrooid.oos.FiileObbservver.AALL_EEVENTTS: /所所有事件 相當(dāng)于ddefauult的功功能 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.CCREATTE: /文文件被創(chuàng)建建 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.OOPEN : /文文件被打開(kāi)開(kāi) /*相關(guān)操作

43、 * */ breeak; caase aandrooid.oos.FiileObbservver.AACCESSS: /打打開(kāi)文件后后,讀文件件內(nèi)容操作作 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.MMODIFFY: /文文件被修改改 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.AATTRIIB: /未未明操作 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.CCLOSEE_NOWWRITEE

44、: /沒(méi)沒(méi)有編輯文文件,關(guān)閉閉/*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.CCLOSEE_WRIITE: /編編輯完文件件,關(guān)閉 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.DDELETTE: /文文件被刪除除 /*相關(guān)操作 * */ breeak; caase aandrooid.oos.FiileObbservver.MMOVEDD_FROOM: /文文件被移動(dòng)動(dòng) /*相關(guān)操作 * */ breeak; 在onEvvent(int evennt,Sttri

45、ngg patth)中,ppath返返回的是發(fā)發(fā)生事件的的文件名,并并且不帶路路徑,當(dāng)我我們?cè)谀硞€(gè)個(gè)事件當(dāng)中中需要找到到發(fā)生事件件的文件就就要結(jié)合它它的路徑才才能找得到到。2.3 jjava程程序設(shè)計(jì)語(yǔ)語(yǔ)言java編編程語(yǔ)言是是一種風(fēng)格格跟c、cc+語(yǔ)言言非常接近近的語(yǔ)言。既然它們們是如此相相似,毫不不例外,javaa語(yǔ)言如同同C或C+一樣也也是面向?qū)?duì)象的程序序設(shè)計(jì)語(yǔ)言言。其中jjava語(yǔ)語(yǔ)言的面向向?qū)ο蠹夹g(shù)術(shù)的核心是是從C+語(yǔ)言繼承承過(guò)來(lái)的。當(dāng)然,兩兩者之間也也是有所區(qū)區(qū)別的,例例如:jaava舍棄棄了c語(yǔ)言言中的指針針。 說(shuō)起jaava,就就不得不說(shuō)說(shuō)javaa語(yǔ)言的跨跨平臺(tái)特性性。Ja

46、vva語(yǔ)言跟跟一般的計(jì)計(jì)算機(jī)語(yǔ)言言的編譯執(zhí)執(zhí)行和解釋釋執(zhí)行過(guò)程程有著很大大的不同。javaa不是直接接編譯的,代碼運(yùn)行之前需要先將源代碼編譯成字節(jié)碼,再利用不同平臺(tái)上的java虛擬機(jī)對(duì)這些字節(jié)碼進(jìn)行解釋。所以,在我看來(lái),java語(yǔ)言是一門應(yīng)用十分廣泛的程序設(shè)計(jì)語(yǔ)言。除此之外,jjava語(yǔ)語(yǔ)言還有其其他的特點(diǎn)點(diǎn),就不詳詳細(xì)說(shuō)明。例如:面向?qū)ο笙蟆⒔忉屝托?、多線程程、分布式式、健壯、安全、動(dòng)動(dòng)態(tài)、體系系結(jié)構(gòu)中立立、可移植植、高性能等等等特點(diǎn)。3.系統(tǒng)設(shè)設(shè)計(jì) 3.11 課題來(lái)來(lái)源隨著手機(jī)越越發(fā)接近計(jì)計(jì)算機(jī)時(shí),病病毒或者一一些間諜軟軟件也將智智能手機(jī)當(dāng)當(dāng)做重點(diǎn)的的入侵對(duì)象象。對(duì)于手手機(jī)用戶來(lái)來(lái)說(shuō),這是

47、是一個(gè)很嚴(yán)嚴(yán)重的問(wèn)題題,讓手機(jī)機(jī)用戶時(shí)刻刻面臨手機(jī)機(jī)信息安全全的威脅。對(duì)文件時(shí)時(shí)刻進(jìn)行監(jiān)監(jiān)控,是一一種保護(hù)文文件的有效效手段同時(shí)時(shí)也是以后后的災(zāi)情評(píng)評(píng)估的基礎(chǔ)礎(chǔ),在系統(tǒng)統(tǒng)安全上起起到重要的的作用。為為此,文件件監(jiān)控是手手機(jī)系統(tǒng)仲仲很重要的的一部分。 3.22 業(yè)務(wù)需需求 設(shè)計(jì)一一個(gè)anddroidd系統(tǒng)上的的文件監(jiān)控控系統(tǒng),為為用戶提供供監(jiān)控手機(jī)機(jī)上文件的的功能,用用戶可以通通過(guò)這個(gè)系系統(tǒng)獲取一一些關(guān)于手手機(jī)中的文文件發(fā)生事事件后的信信息。例如如,在用戶戶不知情的的情況下,手手機(jī)中的一一個(gè)文件被被其他人打打開(kāi)并且查查看,監(jiān)控控系統(tǒng)就會(huì)會(huì)把這個(gè)事事件記錄下下來(lái),用戶戶可以通過(guò)過(guò)監(jiān)控的系系統(tǒng)的日志

48、志查看功能能知道這件件事情。 3.22.1 開(kāi)開(kāi)始界面 11)開(kāi)始監(jiān)監(jiān)控按鈕:當(dāng)用戶選擇擇好需要監(jiān)監(jiān)聽(tīng)的文件件或文件夾夾時(shí),按下下這個(gè)按鈕鈕,就能啟啟動(dòng)監(jiān)控系系統(tǒng)的監(jiān)控控模塊,從從而為用戶戶提供監(jiān)控控服務(wù)。 22)停止監(jiān)監(jiān)控按鈕: 當(dāng)用戶不不再需要監(jiān)監(jiān)控系統(tǒng)提提供監(jiān)控服服務(wù)時(shí),就就可以按下下這個(gè)按鈕鈕,就能停停止監(jiān)控服服務(wù)。 33)目錄選選擇模板: 在這個(gè)模模板上,會(huì)會(huì)顯示出當(dāng)當(dāng)前智能手手機(jī)上的所所有文件目目錄,用戶戶可以通過(guò)過(guò)這個(gè)模板板選擇自己己需要監(jiān)控控的文件目目錄。 44)日志查查看按鈕: 當(dāng)用戶已已經(jīng)啟用監(jiān)監(jiān)控系統(tǒng)的的監(jiān)控服務(wù)務(wù)后,當(dāng)監(jiān)監(jiān)控范圍內(nèi)內(nèi)的文件發(fā)發(fā)生一些事事件(如打打開(kāi),被刪

49、刪除,被修修改等),會(huì)會(huì)通過(guò)后臺(tái)臺(tái)服務(wù)把發(fā)發(fā)生事件的的時(shí)間以及及發(fā)生什么么事件記錄錄在日志上上,這時(shí)候候,用戶可可以通過(guò)點(diǎn)點(diǎn)擊這個(gè)按按鈕,系統(tǒng)統(tǒng)的界面會(huì)會(huì)跳轉(zhuǎn)到日日志查看界界面,從而而讓用戶知知道監(jiān)控過(guò)過(guò)程中發(fā)生生的事件以以及事件發(fā)發(fā)生時(shí)間。 3.33.2 監(jiān)監(jiān)控并生成成日志 11)屬于系系統(tǒng)后臺(tái)的的服務(wù),是是實(shí)現(xiàn)監(jiān)控控功能的模模塊。當(dāng)用用戶點(diǎn)擊在在開(kāi)始界面面上的監(jiān)控控按鈕,這這個(gè)模塊就就會(huì)啟動(dòng),對(duì)對(duì)用戶已經(jīng)經(jīng)選擇好的的目錄進(jìn)行行監(jiān)控。 22)當(dāng)監(jiān)控控系統(tǒng)開(kāi)始始監(jiān)控服務(wù)務(wù)(用戶點(diǎn)點(diǎn)擊開(kāi)始監(jiān)監(jiān)控按鈕),系系統(tǒng)會(huì)生成成一個(gè)loog.txxt,負(fù)責(zé)責(zé)記錄系統(tǒng)統(tǒng)監(jiān)控過(guò)程程中的信息息。 33)監(jiān)聽(tīng)系系統(tǒng)

50、中的文文件目錄或或某一個(gè)文文件(用戶戶在開(kāi)始界界面選擇的的目錄或文文件),當(dāng)當(dāng)某一個(gè)文文件發(fā)生一一些事件時(shí)時(shí),會(huì)把該該文件的名名字、路徑徑、發(fā)生的的事件以及及發(fā)生事件件的時(shí)間這這些信息“寫進(jìn)”之前生成成的logg.txtt文件中。 3.33.3 監(jiān)監(jiān)控結(jié)果查查詢界面 11)返回按按鈕: 當(dāng)當(dāng)用戶查看看完日志后后,可以通通過(guò)點(diǎn)擊這這個(gè)按鈕返返回開(kāi)始界界面進(jìn)行操操作。 22)日志顯顯示模塊: 顯顯示出loog.txxt里面的的內(nèi)容,就就是把一些些文件已經(jīng)經(jīng)發(fā)生的事事件、時(shí)間間、文件名名字以及該該文件的路路徑顯示出出來(lái)。 33)刷新按按鈕: 可可以通過(guò)這這個(gè)按鈕刷刷新當(dāng)前顯顯示狀態(tài)。例如,當(dāng)當(dāng)查看日

51、志志的同時(shí),有有文件發(fā)生生事件,可可以通過(guò)刷刷新按鈕刷刷新當(dāng)前顯顯示界面的的信息。4.系統(tǒng)分分析與設(shè)計(jì)計(jì)方案4.1 文文件監(jiān)控系系統(tǒng)的總體體設(shè)計(jì)思想想 4.1.1 實(shí)現(xiàn)現(xiàn)思想1)分析文文件系統(tǒng),建建立文件監(jiān)監(jiān)控目錄列列表,用戶戶可以通過(guò)過(guò)這個(gè)目錄錄列表選擇擇需要監(jiān)聽(tīng)聽(tīng)的目錄。2)根據(jù)用用戶已經(jīng)選選擇的目錄錄,為該目目錄且以及及該目錄下下的子目錄錄設(shè)置監(jiān)聽(tīng)聽(tīng)器。(監(jiān)監(jiān)聽(tīng)器由FFileOObserrver類類構(gòu)成,經(jīng)經(jīng)過(guò)多次的的測(cè)試,每每個(gè)FilleObsserveer類對(duì)象象只能監(jiān)聽(tīng)聽(tīng)一個(gè)文件件或文件夾夾,并不像像Andrroid 文檔上面面說(shuō)的:監(jiān)監(jiān)聽(tīng)一個(gè)文文件夾,那那么那個(gè)文文件夾下的的所有

52、文件件或子文件件夾發(fā)生事事件時(shí),監(jiān)監(jiān)聽(tīng)器都能能響應(yīng)。實(shí)實(shí)際上當(dāng)監(jiān)監(jiān)聽(tīng)的對(duì)象象是文件夾夾時(shí),那么么,該文件件夾下的文文件是可以以被監(jiān)聽(tīng)到到的,但是是,對(duì)于文文件夾下的的子文件夾夾發(fā)生事件件,F(xiàn)illeObsserveer是不會(huì)會(huì)響應(yīng)的。)3)記錄文文件發(fā)生事事件(被打打開(kāi)、修改改、刪除等等)后的信信息。新建建一個(gè).TTXT文件件,負(fù)責(zé)保保存那些信信息。再通通過(guò)查看.TXT文文件,以此此作為監(jiān)控控系統(tǒng)的信信息查詢模模塊。 4.1.2 實(shí)現(xiàn)現(xiàn)步驟1)新建一一個(gè)文件列列表的布局局類FilleLayyout。通過(guò)anndroiid.oss.Envvironnmentt 中的ggetExxternnalS

53、ttoraggeDirrectoory()方法獲取取sd卡的的目錄路徑徑。自定義義方法sttringgCmp()把把文件目錄錄按照字母母表排序顯顯示。自定定義方法SStrinng getSSelecctedFFiless()獲取取用戶選中中的要監(jiān)控控的文件列列表。2)構(gòu)造好好一個(gè)監(jiān)聽(tīng)聽(tīng)器MyFFileOObserrver(eextennds FFileOObserrver),把把所需要響響應(yīng)的事件件在onEEventt()方法法中寫好,同同時(shí)把事件件發(fā)生后的的信息記錄錄在logg.txtt文件中RRandoomAcccessFFile raf = neew RaandommAcceessFii

54、le(llog, rw);raaf.wrrite(msg.getBBytess(UTTF-8)。3)創(chuàng)建一一個(gè)后臺(tái)服服務(wù)類FiileMoonitoorSerrvicee,用于給給目錄(已已經(jīng)被用戶戶選中的目目錄)以及及目錄下的的子目錄設(shè)設(shè)置監(jiān)聽(tīng)器器。(遞歸歸調(diào)用監(jiān)聽(tīng)聽(tīng)器MyFFileOObserrver,以以此遍歷監(jiān)監(jiān)聽(tīng)被選目目錄下的每每個(gè)子目錄錄)4)創(chuàng)建一一個(gè)工具類類Utillity。用于日志志信息的接接收以及備備份。自定定義一個(gè)方方法reaadFille()讀讀取監(jiān)聽(tīng)器器發(fā)送過(guò)來(lái)來(lái)的信息。自定義方方法bacckUpLLog()備份loog。5)方法 inittLog()初初始化日志志界面

55、,用用于顯示llog.ttxt中的的信息。 系統(tǒng)流流程圖:5.監(jiān)控系系統(tǒng)各功能能模塊5.1 開(kāi)開(kāi)始界面模模塊 這這個(gè)模塊主主要為用戶戶提供了了了一些對(duì)監(jiān)監(jiān)控系統(tǒng)進(jìn)進(jìn)行一系列列操作的按按鈕,包括括開(kāi)始監(jiān)控控、停止監(jiān)監(jiān)控、日志志查看這三三個(gè)按鈕。界面如下下圖:5.2 監(jiān)監(jiān)控路徑選選擇模塊 這這個(gè)模塊主主要是提供供給用戶一一個(gè)選擇路路徑的界面面??蛻艨煽梢詮倪@個(gè)個(gè)界面中選選擇想要監(jiān)監(jiān)控的文件件夾,同時(shí)時(shí)也能通過(guò)過(guò)這個(gè)模塊塊來(lái)查看系系統(tǒng)中各個(gè)個(gè)目錄以及及各個(gè)目錄錄下的文件件。其中,這這個(gè)界面有有一個(gè)“上一級(jí)”的按鈕,通通過(guò)點(diǎn)擊這這個(gè)按鈕可可以返回上上一個(gè)目錄錄。具體界界面如下: 5.3 監(jiān)監(jiān)控模塊 這

56、這是一個(gè)屬屬于后臺(tái)服服務(wù)的模塊塊,通過(guò)點(diǎn)點(diǎn)擊開(kāi)始界界面的開(kāi)始始監(jiān)控按鈕鈕以及停止止監(jiān)控按鈕鈕會(huì)執(zhí)行監(jiān)監(jiān)控文件和和停止監(jiān)控控這兩個(gè)功功能。這個(gè)個(gè)模塊的功功能實(shí)現(xiàn)過(guò)過(guò)程大致如如下: 5.4 日日志查詢模模塊 通過(guò)過(guò)點(diǎn)擊開(kāi)始始界面的日日志查看按按鈕,可以以查看監(jiān)控控過(guò)程中發(fā)發(fā)生的事件件。具體圖圖示如下: 其其中,刷新新按鈕可以以用于刷新新日志顯示示,查看最最新的日志志。例如:當(dāng)查看日日志的過(guò)程程中,又有有文件發(fā)生生某些事件件,這時(shí)候候,點(diǎn)擊刷刷新按鈕,能能看到這個(gè)個(gè)剛剛查看看過(guò)程發(fā)生生的事件。 返返回按鈕,點(diǎn)點(diǎn)擊該按鈕鈕能返回主主界面。6.各個(gè)類類的作用總類: 6.1 MMainAActivvity

57、類類(相關(guān)布布局文件:actiivityy_maiin.xmml) 類類說(shuō)明:顯顯示出開(kāi)始始界面,通通過(guò)點(diǎn)擊界界面的三個(gè)個(gè)按鈕(開(kāi)開(kāi)始監(jiān)控、停止監(jiān)控控、日志查查看),用用戶可以對(duì)對(duì)系統(tǒng)進(jìn)行行相關(guān)的操操作。6.2 FFileMMonittorSeervicce 類類說(shuō)明:屬屬于后臺(tái)服服務(wù)類,接接收來(lái)自主主界面發(fā)來(lái)來(lái)的路徑信信息,根據(jù)據(jù)路徑信息息,遞歸調(diào)調(diào)用MyFFileOObserrver類類,從而實(shí)實(shí)現(xiàn)遍歷監(jiān)監(jiān)控文件夾夾的功能。6.3 MMyFilleObsserveer 類類說(shuō)明:監(jiān)監(jiān)聽(tīng)器,根根據(jù)FilleMonnitorrServvice 類的調(diào)用用,對(duì)文件件夾進(jìn)行監(jiān)監(jiān)控。是監(jiān)監(jiān)控模塊中中

58、的監(jiān)聽(tīng)器器,當(dāng)文件件或文件夾夾發(fā)生事件件時(shí),能夠夠做出相應(yīng)應(yīng)的響應(yīng),同同時(shí)把事件件信息發(fā)送送到Utiilityy類。6.4 UUtiliity 類類類說(shuō)明:在在sdcaard目錄錄下生成llog.ttxt文件件,接收來(lái)來(lái)自MyFFileOObserrver類類的信息,并并把信息記記錄在loog.txxt文件里里。6.5 NNaviggatioonVieew 類類說(shuō)明:導(dǎo)導(dǎo)航控件,用用于響應(yīng)路路徑選擇模模塊中上一一級(jí)、下一一級(jí)兩個(gè)控控件。記錄錄當(dāng)前所在在的目錄6.7 FFileLLayouut 類類說(shuō)明:是是文件列表表的布局類類,獲取ssd卡下的的文件和目目錄列表以以及獲取用用戶選中的的要監(jiān)控的

59、的文件列表表。6.8 FFileMManaggerLaayoutt 類類說(shuō)明:是是一個(gè)用于于主界面的的控件布局局類。主要要用于初始始化控件的的排版。7.系統(tǒng)設(shè)設(shè)計(jì)與實(shí)現(xiàn)現(xiàn)7.1 開(kāi)開(kāi)發(fā)環(huán)境工工具1)javva 環(huán)境境:jdkk JDKK即為Jaava DDevellopmeent KKit,是是Sun Micrrosysstemss公司針對(duì)對(duì)Javaa開(kāi)發(fā)員而而研發(fā)的產(chǎn)產(chǎn)品??墒鞘钦f(shuō),JDDK是整個(gè)個(gè)javaa的核心,里里面包括有有javaa的運(yùn)行環(huán)環(huán)境、工具具以及基礎(chǔ)礎(chǔ)類庫(kù)。2)Anddroidd 平臺(tái):ecliipse + anndroiid sddk Eclippse,在在我看來(lái),是是一

60、個(gè)用于于進(jìn)行jaava代碼碼編寫的工工具。實(shí)際際上,通過(guò)過(guò)相關(guān)資料料的查看,我我明白到自自己的理解解只是很片片面的一小小部分。它它應(yīng)該是一一個(gè)可擴(kuò)展展開(kāi)發(fā)平臺(tái)臺(tái),例如,本本次的Anndroiid監(jiān)控系系統(tǒng)就是通通過(guò)Ecllipcee和ADTT搭配環(huán)境境后編寫的的。對(duì)于本本身來(lái)說(shuō),它它只是一個(gè)個(gè)框架以及及一組服務(wù)務(wù),依靠插插件組件來(lái)來(lái)構(gòu)建開(kāi)發(fā)發(fā)環(huán)境。當(dāng)當(dāng)然它自身身附帶了一一個(gè)標(biāo)準(zhǔn)的的插件集,其其中包括JJava的的開(kāi)發(fā)工具具JDK。很多人都都把Ecllipsee僅僅當(dāng)作作javaa的開(kāi)發(fā)環(huán)環(huán)境來(lái)使用用,事實(shí)上上,它的功功能不僅僅僅是這樣。它有一個(gè)個(gè)組件PDEE,具有能讓軟軟件開(kāi)發(fā)人人員擴(kuò)展EEc

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論