




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)I畢業(yè)設(shè)計(論文)基于Android的圖片管理器設(shè)計與實現(xiàn)基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第1頁。
摘要基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第1頁。隨著智能手機(jī)走進(jìn)普通人的生活,它將成為人們獲取信息的主要設(shè)備。因此,手機(jī)的應(yīng)用服務(wù)將會有很大的發(fā)展空間,手機(jī)圖片管理服務(wù)就是其中的一項。Android平臺支持各種應(yīng)用的開發(fā),它是目前最流行的開源智能手機(jī)操作系統(tǒng),最新的版本是android4.2,提供了便捷靈活的開發(fā)接口。本課題在AndroidSDK2.2平臺下,設(shè)計了一個手機(jī)圖片管理。采用了Android平臺的Framework層提供的接口,實現(xiàn)了圖片預(yù)覽、圖片動態(tài)切換、停止播放等功能,支持jpg,bmp,png和gif圖片格式,該程序是獨(dú)立的apk文件,可以安裝在android2.2以上的系統(tǒng)內(nèi)。它可以讓手機(jī)成為一個圖片管理,用戶可以將其放在心儀的地方,來展示美好的圖片,而不必再去購買別的設(shè)備就能擁有精美的圖片管理了。本文開頭首先對圖片管理軟件的研究背景做了簡單介紹,其次簡述了現(xiàn)今流行的幾個手機(jī)開發(fā)平臺,詳細(xì)介紹了Android開發(fā)平臺的架構(gòu),并描述了Android開發(fā)環(huán)境的搭建過程;接下來是對系統(tǒng)設(shè)計的介紹,本文從對購書比價系統(tǒng)的分析,到數(shù)據(jù)庫的設(shè)計,再到系統(tǒng)客戶端的實現(xiàn)都做了詳細(xì)的解說,并把有些細(xì)節(jié)和技術(shù)提出來做單一的解說;緊接著本文描述了此客戶端的圖片管理軟件的測試過程和如何發(fā)布此系統(tǒng)。。本設(shè)計完成后,能夠?qū)崿F(xiàn)以下功能:圖片的瀏覽、圖片屬性的修改、圖片的一些基本操作?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第2頁。關(guān)鍵詞:Android;java;圖片管理;基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第2頁。第1章緒論1.1系統(tǒng)開發(fā)背景如今手機(jī)就像鑰匙一樣,是我們出門必帶的物品之一。隨著科技的迅猛發(fā)展,現(xiàn)在的手機(jī)都是智能手機(jī),它的功能不僅僅只是用來打電話或是收發(fā)短信,我們還可以用它聽歌看視頻、用藍(lán)牙傳輸數(shù)據(jù)、玩游戲、上網(wǎng)等等。據(jù)數(shù)據(jù)資料顯示,截至2013年1月我國有8億手機(jī)用戶,使用手機(jī)上網(wǎng)的用戶超過了6億?;赼ndroid平臺手機(jī)的發(fā)展趨勢,本設(shè)計以android平臺手機(jī)為核心制作了一個圖片瀏覽器。本次設(shè)計運(yùn)用android平臺手機(jī)作為研究開發(fā)對象,配合Java語言程序設(shè)計以及面向?qū)ο笏枷朐O(shè)計了一種手機(jī)圖片瀏覽器。本設(shè)計完成后,能夠?qū)崿F(xiàn)以下功能:圖片的瀏覽、圖片屬性的修改、圖片的一些基本操作,一些遠(yuǎn)程模塊的調(diào)用、根據(jù)不同圖片擴(kuò)展名來實現(xiàn)圖片只能的打開,同時給以后的一些實用軟件留下了借口、可以實現(xiàn)與手機(jī)之間的通訊。以及電腦之間的共享。在設(shè)計時,按照設(shè)計的要求,從可靠性、經(jīng)濟(jì)性、安全性三個方面進(jìn)行考慮,通過設(shè)計方案的比較,確定出來一套即經(jīng)濟(jì)又可行的方案。本次設(shè)計是對所學(xué)知識的綜合運(yùn)用,把理論知識和實踐相結(jié)合。在本次設(shè)計與檢驗過程中遇到了許多實際問題,比如android平臺手機(jī)及其運(yùn)行環(huán)境的選擇,不熟悉myeclipse和eclipse軟件的使用方法,不熟悉開發(fā)技巧,可能會發(fā)生一些微小功能不能實現(xiàn)、軟件運(yùn)行不穩(wěn)定,如何設(shè)計軟件的最佳外觀效果等。所有的這些問題,我們都通過查閱資料,咨詢老師一一解決了,為設(shè)計的成功提供了保障?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第3頁。本文通過方案確認(rèn),介紹了設(shè)計中所用到的技術(shù)、開發(fā)思想,以及android平臺的簡介,通過清晰的程序流程圖,給程序的理解提供了方向。還介紹了程序調(diào)試軟件和硬件調(diào)試軟件,最后對本設(shè)計的軟件做了一個概述?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第3頁。1.2國內(nèi)外研究現(xiàn)狀圖片管理軟件顧名思義,則是用戶用于管理圖片的軟件。目前國內(nèi)外電子相冊繁多,不同的軟件,圖片管理方式都會有不同。隨著數(shù)碼相機(jī)在家庭中越來越普及,人們在可以更方便的拍攝照片卻又不需要把拍攝的照片都沖印的時候,更多就選擇了打包保存在電腦或光盤中,圖片管理軟件就在這一過程中充當(dāng)了非常重要的作用。通過圖片管理軟件,我們的照片可以更加動態(tài)、更加多姿多彩的展現(xiàn),通過電子相冊制作軟件的打包,相片可以更方便的以一個整體分發(fā)給親朋好友,刻錄在光盤上保存,或在影碟機(jī)上播放。COOZINE(XBOOKSKY)COOZINE基于Flash技術(shù),是實現(xiàn)在線和離線、電子圖書的核心,它應(yīng)用在需要從PDF文件或JPEG文件源制作的電子雜志的情況,它同時提供一些協(xié)助處理工具軟件,方便批量的處理,而且?guī)椭臋n較詳細(xì),還提供了演示下載包,可以稍作修改即可。COOZINE與目前的幾類電子雜志軟件不同,它把閱讀以及低成本批量制作作為首要追求目標(biāo)。每一本COOZINE電子雜志(電子圖書)由COOZINE、JPEG圖片和XML文件3部分組成。PortableScribusPortableScribus是一款類似AdobePagemaker的開源圖片管理制作軟件,可以用來制作個人文件、郵件列表、電子雜志類型的電子文檔。它體積很小,可以放在U盤里,只需插入相應(yīng)的電腦就可以使用。Premiere軟件特點(diǎn):premiere是一款專業(yè)級具有高級的編輯功能的圖片管理制作軟件,對于專業(yè)用戶,它可以通過不斷增加插件,和用戶的專業(yè)水平進(jìn)行復(fù)雜的編輯,制作出專業(yè)的絢麗相冊,但由于面向?qū)I(yè)用戶,軟件的操作十分復(fù)雜,上手時間很長,非專業(yè)用戶使用有非常大的難度。1.3本文的主要工作Android圖片管理系統(tǒng)有效地解決了大量圖片管理問題,系統(tǒng)開發(fā)時分為前端頁面設(shè)計開發(fā)和后臺業(yè)務(wù)實現(xiàn)開發(fā)?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第4頁。本文開頭首先對圖片管理軟件的研究背景做了簡單介紹,其次簡述了現(xiàn)今流行的幾個手機(jī)開發(fā)平臺,詳細(xì)介紹了Android開發(fā)平臺的架構(gòu),并描述了Android開發(fā)環(huán)境的搭建過程;接下來是對系統(tǒng)設(shè)計的介紹,本文從對圖片管理器功能模塊的分析,到android系統(tǒng)服務(wù)的調(diào)用的設(shè)計,再到系統(tǒng)客戶端的實現(xiàn)都做了詳細(xì)的解說,并把有些細(xì)節(jié)和技術(shù)提出來做單一的解說;緊接著本文描述了此客戶端的圖片管理軟件的測試過程和此系統(tǒng)特色功能。本設(shè)計完成后,能夠?qū)崿F(xiàn)以下功能:圖片的瀏覽、圖片屬性的修改、圖片的增刪改等具體操作?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第4頁。1.4本文的組織結(jié)構(gòu)第二章需求分析,首先描述圖片管理系統(tǒng)的總體業(yè)務(wù)流程,然后介紹該圖片管理器的設(shè)計目的和解決的用戶實際使用面臨問題。最后將軟件需求分為軟件功能性與非功能性需求進(jìn)行匯總。第三章系統(tǒng)概要設(shè)計,主要是基于android系統(tǒng)架構(gòu)與MVC軟件架構(gòu)進(jìn)行設(shè)計。概要設(shè)計包括物理層設(shè)計與邏輯架構(gòu)層的設(shè)計。第四章系統(tǒng)詳細(xì)設(shè)計,本章主要進(jìn)行系統(tǒng)建模設(shè)計。在系統(tǒng)建模部分,從靜態(tài)結(jié)構(gòu)和動態(tài)結(jié)構(gòu)兩個方面討論了系統(tǒng)建模的設(shè)計。第五章系統(tǒng)的實現(xiàn)與測試,首先對圖片管理器基本操作如何實現(xiàn)進(jìn)行描述,并通過系統(tǒng)代碼截圖和軟件功能截圖進(jìn)一步說明。在本章的最后又對系統(tǒng)的測試情況進(jìn)行了說明?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第5頁。
第2章需求分析基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第5頁。2.1總體業(yè)務(wù)描述本章需求分析為了下文的詳細(xì)設(shè)計和系統(tǒng)實現(xiàn)想打下基礎(chǔ),旨在于提高軟件開發(fā)過程中的能見度,便于對軟件開發(fā)過程中的控制與管理,同時提出了本軟件開發(fā)過程,便于開發(fā)人員與客戶之間的交流、協(xié)作,并作為工作成果的原始依據(jù),同時也表明了本軟件的共性,以期能夠獲得更大范圍的應(yīng)用。在android系統(tǒng)在手機(jī)平臺風(fēng)靡的同時,圖片管理器在系統(tǒng)中越來越普及,人們通過圖片管理軟件對圖片進(jìn)行圖片管理,既方便了用戶,又為傳統(tǒng)圖片管理帶來了革新的契機(jī)。現(xiàn)今android操作系統(tǒng)逐漸成熟,尤其是伴隨著各大手機(jī)廠商如三星(Samsung),多普達(dá)(HTC)出款的多款android手機(jī)大熱。人們不僅要求采用手機(jī)連接PC進(jìn)行圖片管理,更加盼望在手機(jī)操作系統(tǒng)上實現(xiàn)快捷方便的圖片管理。隨之帶來的是android手機(jī)給功能強(qiáng)大,使用簡單快捷,擁有良好操作界面的手機(jī)圖片管理系統(tǒng)的具體需求。系統(tǒng)基于android系統(tǒng)進(jìn)行二次開發(fā),考慮到android的基于Linux本質(zhì),開發(fā)語言選擇使用成熟的高級語言Java。在pc端windows平臺下使用AndroidSDK自帶移動模擬器開發(fā)調(diào)試,生成軟件包,在手機(jī)端安裝apk來達(dá)到最終系統(tǒng)運(yùn)行的目標(biāo)。利用eclipse開發(fā)的android應(yīng)用程序,能夠與安裝有android操作系統(tǒng)的手機(jī)硬件相聯(lián)系,快速便捷的訪問手機(jī)SD卡和本機(jī)內(nèi)存中各個類型圖片。有條理的將手機(jī)圖片與系統(tǒng)中劃分的圖片類型集合相對應(yīng),比如系統(tǒng)中分為圖片集合,音樂集合等,通過窗口集合的方式顯示各個對象和不同類型圖片的對應(yīng)關(guān)系。系統(tǒng)層次清楚,模塊獨(dú)立。根據(jù)軟件低耦合的指導(dǎo)思想,將系統(tǒng)分為界面層,數(shù)據(jù)層,存儲層等。采用此軟件架構(gòu),滿足了用戶的同時訪問和android系統(tǒng)并發(fā)調(diào)用?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第6頁。能夠支持多種圖片格式,可是標(biāo)準(zhǔn)主流常見的圖片格式,也可以滿足特定格式需求。系統(tǒng)留有軟件識別的圖片格式的接口,能夠能夠方便的增加在開始之后確定的圖片格式和特殊需求?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第6頁。系統(tǒng)具有能有完美調(diào)用android服務(wù)的接口,支持在使用開發(fā)過程中新需求帶來的處理新對象所對應(yīng)的android服務(wù)。數(shù)據(jù)的流向具有雙向性。軟件將本機(jī)或sd卡的圖片數(shù)據(jù)進(jìn)行處理,匯總之后上床到界面端,呈現(xiàn)在用戶面前。軟件將用戶操作具體實現(xiàn)到本機(jī)或sd卡中,根據(jù)用戶操作進(jìn)行圖片的更新,良好快速實現(xiàn)上層軟件對底層硬件設(shè)備的數(shù)據(jù)管理。2.2系統(tǒng)目標(biāo)和需要解決的問題隨著信息的高速發(fā)展手機(jī)已變的越來越普及尤其是智能手機(jī),基于Android操作系統(tǒng)的手機(jī)就是在這樣的趨勢下逐漸一步步的走入我們的生活,因此,我們選擇這樣的研究課題最主要的一點(diǎn)是看在它的潛在市場價值,通過開發(fā)基于Android的圖片瀏覽器,能給廣大Android用戶提供一個安全的,功能強(qiáng)大的,易于操作的,便于管理的高性能管理器。安卓手機(jī)基本都會去安裝圖片瀏覽器,尤其是ES圖片管理器、RE圖片管理器、安卓優(yōu)化大師用的最為常見,根據(jù)需求分析可見,用戶將通常對圖片管理的要求就是美觀度、操作性、功能是否全面。系統(tǒng)需要解決的問題主要包括:2.圖片管理中各個方面的功能不同,需要在滿足1.圖片管理的主要使用者是廣大手機(jī)用戶,手機(jī)用戶不同的需求多而各式各樣,軟件怎樣提供最為方便,最能提供有效服務(wù),最能滿足大量用戶共同需求的功能?需求的同時,對需求進(jìn)行具體分析。圖片管理業(yè)務(wù)流程復(fù)雜,需要在android系統(tǒng)的基礎(chǔ)上,完成在sd卡和本機(jī)圖片管理,系統(tǒng)如何在處理用戶圖片操作的同時,實現(xiàn)與系統(tǒng)的兼容和交互,又能體現(xiàn)出軟件的特色和功能。3.與手機(jī)系統(tǒng)交互時,獲取的圖片信息復(fù)雜且沒有分類,同時用戶的操作也是不盡相同。隨著用戶使用手機(jī)的變長,圖片的數(shù)量和類型伴隨著增多,手機(jī)存儲容量進(jìn)一步減少,需要對圖片進(jìn)行實時的管理,將大量圖片的實時信息上傳到UI界面?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第7頁。4.最大程度的減少用戶誤操作和實現(xiàn)對系統(tǒng)關(guān)鍵圖片的保護(hù),在管理過程中如何做到軟件的可靠運(yùn)行,操作的安全和圖片的完整,并且需要對管理進(jìn)行記錄,來達(dá)到圖片的恢復(fù)?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第7頁。5.軟件的UI端作為大量圖片的顯示端,匯總較多數(shù)量和不同類型的圖片,如何叫系統(tǒng)以最快的速度對數(shù)據(jù)進(jìn)行有效整合,并且以簡單明了的圖形化和樹狀結(jié)構(gòu)顯示在UI。6.系統(tǒng)采用統(tǒng)一管理方式,即在應(yīng)用程序列表中會顯示系統(tǒng)中全部軟件信息。其中系統(tǒng)必須組件和用戶自行安裝軟件相互混雜,一般用戶很難講其中的軟件區(qū)分開來,這就對用戶的軟件管理帶來不便。本系統(tǒng)的開發(fā)就是為了解決以上這個問題。本系統(tǒng)的設(shè)計是專門針對Android設(shè)備用戶的日常軟件,具體提出以下實現(xiàn)目標(biāo):1.大量圖片或者圖片夾的基本操作,比如復(fù)制、粘貼、剪切、新建圖片夾、刪除等典型操作2.支持多標(biāo)簽頁改變圖片列表或者圖標(biāo)的顯示方式。3.支持圖片拖延功能圖片或者圖片夾多選功能。4.添加APK的Android安裝包管理,包含軟件安裝,卸載,備份,查看詳細(xì)信息等5.收藏夾功能類似于書簽,可以創(chuàng)建多個庫并把圖片添加到庫里面,方便對圖片進(jìn)行管理和分類。6.在界面和操作上有很獨(dú)到而人性化的設(shè)計。界面簡潔精美,功能強(qiáng)大全面,智能的圖片分類瀏覽,獨(dú)有的網(wǎng)格化界面瀏覽設(shè)計讓用戶在手機(jī)上體驗到PC一樣的方便性。7.讓用戶在手機(jī)本地圖片和sd卡圖片管理之間實現(xiàn)最平滑的操作體驗。8.在root權(quán)限下,使用比系統(tǒng)自帶管理器更容易,界面和操作流程更加優(yōu)秀。在統(tǒng)一瀏覽屏幕下,瀏覽、傳輸、復(fù)制、剪切、刪除、重命名圖片和圖片夾等圖片操作比較快速。2.3系統(tǒng)需求分析基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第8頁。需求分析目的是規(guī)范化本軟件的編寫,旨在于提高軟件開發(fā)過程中的能見度,便于對軟件開發(fā)過程中的控制與管理,同時提出了本軟件開發(fā)過程,便于開發(fā)人員與客戶之間的交流、協(xié)作,并作為工作成果的原始依據(jù),同時也表明了本軟件的共性,以基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第8頁。在需求分析中,需求獲取為了實現(xiàn)目標(biāo)系統(tǒng),需要大量時間和用戶溝通,研發(fā)人員搭建良好的溝通環(huán)境,和用戶高度合作。身為研發(fā)人員,必須將用戶的表面需求抽象為模型,這樣才能徹底理解需求,建立良好的溝通橋梁,幫助研發(fā)人員深刻了解業(yè)務(wù)模型,并且將系統(tǒng)如何幫助用戶簡化操作,提高圖片管理水平,帶來方便。本文所開發(fā)的基于android的圖片管理系統(tǒng)是一款安裝在主流android手機(jī)上,集圖片分類,圖片管理,權(quán)限獲取,圖片統(tǒng)計于一體。通過android開源的優(yōu)勢,保證軟件能夠識別外接存儲卡和本機(jī)內(nèi)存;同時,手機(jī)軟件的特殊性需要圖片管理系統(tǒng)采取一定的安全機(jī)制,保護(hù)用戶的隱私。本軟件能為用戶提供最基本的圖片瀏覽,相關(guān)圖片調(diào)用:例如圖片相關(guān)路徑的設(shè)置、路徑的更改,可以最大限度的體現(xiàn)圖片瀏覽器的最基本的功能,使圖片瀏覽器的性能在目前配置下最大程度的提升。Android手機(jī)用戶首先打開軟件,進(jìn)入系統(tǒng)主界面,手機(jī)軟件請求獲得root權(quán)限,并初始化顯示界面,顯示各個不同類型圖片的各項基本信息,同時對sd卡進(jìn)行初始化,獲得sd卡具體容量信息,初始化完成后,用戶對圖片進(jìn)行諸如查看,移動,刪除等基本操作,在此基本操作功能上,系統(tǒng)調(diào)用各個軟件對不同圖片進(jìn)行不同調(diào)用,如打開圖片,瀏覽圖片等。用戶在使用完上述圖片管理功能之后,用戶退出軟件,系統(tǒng)釋放掉占用的root權(quán)限。系統(tǒng)整體流程如圖1-1所示:圖2-1Android圖片管理系統(tǒng)整體流程圖Figure2-1Androidfilemanagementoverallsystemflowchart1.圖片分類基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第9頁?;谟脩魧D片方便的具體需求,系統(tǒng)對圖片進(jìn)行分類,分類的標(biāo)準(zhǔn)按照android系統(tǒng)所識別的幾大圖片類型,分別按照不同的圖片類型遍歷sd卡和本機(jī)存儲空間,獲得此類型的圖片列表,最后在圖片瀏覽界面按照系統(tǒng)設(shè)定,以網(wǎng)格化的形式將圖片數(shù)量和類型顯示在用戶面前,通過高效率的軟件功能,在最短的時間,將大量的圖片按照合適的分類,按用戶的具體需求,向用戶提供圖片分類瀏覽,達(dá)到設(shè)計目標(biāo)?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第9頁。2.圖片管理(1)需求建模研發(fā)人員通過對android系統(tǒng)的研究和對廣大用戶的需求分析進(jìn)行實際調(diào)查,與用戶深入交流,根據(jù)多方面獲得的需求信息建立諸如用例圖,時序圖,流程圖等模型,與用戶需求建立可視化的橋梁,將信息雙向透明的展現(xiàn)在用戶和研發(fā)人員之間。需求建模對軟件開發(fā)起到的全局性的促進(jìn)作用,針對本文所研發(fā)的基于android的圖片管理系統(tǒng),需求分析在軟件生命周期中占有非常重要的位置。本文從系統(tǒng)的功能性需求和非功能性需求兩方面進(jìn)行分析。(1)系統(tǒng)功能性需求1)系統(tǒng)總體功能分析在需求過程中,調(diào)研人員采用用例圖描述系統(tǒng)的各個單元模塊,通過對圖片管理軟件的參與者和用例之間的關(guān)系描述,將系統(tǒng)的靜態(tài)結(jié)構(gòu)以可視化的方式提供給研發(fā)人員作為參考?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第10頁。圖片分類運(yùn)行在android操作系統(tǒng)中,圖片管理軟件調(diào)用權(quán)限獲取模塊申請獲取root權(quán)限,為用戶提供圖片管理的基礎(chǔ)。圖片管理系統(tǒng)獲取權(quán)限的同時,調(diào)用生成列表模塊遍歷手機(jī)內(nèi)存和SD卡中圖片,生成列表。在生成列表的基礎(chǔ)上,軟件對圖片進(jìn)行分類,調(diào)用界面模塊,將圖片展示在軟件前端。用戶在軟件的前端顯示基礎(chǔ)上,查看圖片,選擇需要操作的圖片,對圖片進(jìn)行查看,刪除,重命名和圖片拖拽操作。系統(tǒng)總體用例圖和流程圖如下:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第10頁。圖2-2Android圖片管理系統(tǒng)總體用例圖Figure2-2Androidfilemanagementsystemgeneralusecasediagram2)圖片分類管理基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第11頁。進(jìn)入圖片分類的首頁面,系統(tǒng)可以瀏覽系統(tǒng)所劃分的類型下的所有圖片,不同的圖片類型展示不同的圖片圖標(biāo),如果是常用的圖片類型,則展示相應(yīng)的圖片或者圖標(biāo)。分別列出了當(dāng)前類別和屬于該類別的圖片數(shù)量(比如手機(jī)中所有音樂,視頻之類的圖片數(shù)量),當(dāng)系統(tǒng)點(diǎn)擊其中一個類別的時候,會在第2個頁面展示當(dāng)前頁面的信息。系統(tǒng)所劃分的圖片類型有音樂,視頻,圖片,軟件,文本圖片,壓縮包等,另外,根據(jù)用戶的特殊需求,圖片分類提供收藏分類界面,為用戶提供圖片收藏功能,方便用戶查找。系統(tǒng)具體用例圖如下圖:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第11頁。圖2-3Android圖片分類用例圖Figure2-3Androidfilemanagementgeneralusecasediagram3)圖片管理系統(tǒng)可以選擇復(fù)制,移動,刪除,重命名,收藏這些操作,當(dāng)系統(tǒng)選擇一個條目并執(zhí)行如圖的操作的時候它的名字就會變成藍(lán)色,出現(xiàn)晃動提示。當(dāng)系統(tǒng)選擇移動或者復(fù)制的時候,,這時系統(tǒng)可以選擇圖片夾,點(diǎn)擊確定按鈕進(jìn)行復(fù)制,移動操作.在圖片管理的過程中同時伴有著界面切換,開機(jī)自啟動功能,圖標(biāo)常駐通知欄等具體用例。具體用例圖如下:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第12頁。圖2-3Android圖片管理用例圖基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第12頁。Figure2-3Androidfilemanagementgeneralusecasediagram圖片管理過程中,需要注意的是用戶權(quán)限的獲取,為保護(hù)系統(tǒng)核心圖片,在未獲得root權(quán)限的情況下,不允許對圖片進(jìn)行操作,具體流程如下圖:(2)系統(tǒng)非功能性需求Android圖片管理系統(tǒng)面向用戶功能明確,并且由于是基于android系統(tǒng)手機(jī)嵌入式軟件,所以滿足圖片管理主要功能的同時,還需要滿足一些非功能性需求。非功能性需求在以往的軟件開發(fā)中經(jīng)常被研發(fā)人員忽視,導(dǎo)致非功能性需求得不到保障,進(jìn)而致使保障不了功能性需求的定義和實現(xiàn)。為了更好的實現(xiàn)圖片管理系統(tǒng)的帶給用戶的價值,基于提高軟件質(zhì)量和遵守Android軟件設(shè)計的主流標(biāo)準(zhǔn)和規(guī)范的考慮,圖片管理系統(tǒng)非功能性需求有以下幾個方面:1.界面設(shè)計需求:此處的界面設(shè)計需求不同于詳細(xì)的界面的設(shè)計,主要體現(xiàn)的是用戶在手機(jī)上使用圖片管理軟件的體驗感覺。作為手機(jī)應(yīng)用,應(yīng)該注重軟件界面設(shè)計的美觀,簡單,大方。由于圖片類型的較多,不同圖片類型模塊間的切換要求平滑實現(xiàn)。界面主題顏色采用醒目亮色。調(diào)用android操作系統(tǒng)的控件時充分考慮系統(tǒng)對控件的支持是否良好和使用范圍是否超出軟件需求。2.執(zhí)行需求:執(zhí)行需求要充分考慮當(dāng)前主流手機(jī)的硬件配置,要求圖片管理軟件精確完成圖片操作和完成功能時間在用戶可接受的范圍之內(nèi)。軟件在響應(yīng)用戶的圖片操作時,對初始化界面顯示圖片列表的速度,完成諸如圖片移動,刪除,重命名等操作的精確性,完成操作后更新列表的時間,驗證root權(quán)限的準(zhǔn)確度等。3.易用性需求:在滿足用戶功能的需求的同時,軟件最終提供給用戶的功能的調(diào)用要符合用戶使用手機(jī)軟件的習(xí)慣操作和對軟件的前期期望值。系統(tǒng)需求分析中心圍繞的用戶的使用習(xí)慣展開,細(xì)分用戶習(xí)慣和需求,和軟件應(yīng)用功能相結(jié)合,最終達(dá)到用戶可以更快的操作軟件?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第13頁。4.適應(yīng)性需求:適應(yīng)性需求主要包括圖片管理軟件對手機(jī)軟件環(huán)境和硬件環(huán)境的適應(yīng)。系統(tǒng)適應(yīng)的軟件環(huán)境主要是適應(yīng)手機(jī)android操作系統(tǒng),軟件適合于android1.0以上的所有版本的系統(tǒng),可以調(diào)用android相應(yīng)的服務(wù)和android自帶的控件;系統(tǒng)適應(yīng)的硬件環(huán)境主要是識別手機(jī)內(nèi)存和自帶的SD卡,軟件安裝后占有極少的手機(jī)空間前提下,提供完整的圖片管理功能?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第13頁。5.擴(kuò)展性需求:系統(tǒng)采用開源代碼java,基于android系統(tǒng)開源的特性,在現(xiàn)有的成熟的軟件框架之下,可以調(diào)用系統(tǒng)留有的二次接口進(jìn)行后續(xù)的軟件功能擴(kuò)展,定期維護(hù)和系統(tǒng)升級基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第14頁。6.安全性需求:系統(tǒng)面對的手機(jī)圖片含有大量私人重要信息,如自拍圖片,系統(tǒng)截圖等,同時,用戶可以查看系統(tǒng)圖片,若用戶對個人重要圖片和系統(tǒng)關(guān)鍵圖片進(jìn)行了不當(dāng)誤操作,后果不堪設(shè)想。為此,針對系統(tǒng)關(guān)鍵圖片誤操作,系統(tǒng)提供了關(guān)鍵性圖片保護(hù)功能,對系統(tǒng)圖片采取驗證root權(quán)限的驗證,針對個人重要信息圖片,系統(tǒng)應(yīng)當(dāng)提供提示框的方式提示用戶,并考慮采用支持可恢復(fù)性處理??傊谧⒅毓δ軐崿F(xiàn)的同時,將軟件功能面向的圖片對象有條件的限制在特定圖片范圍之內(nèi)。
基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第14頁。第3章系統(tǒng)設(shè)計3.1系統(tǒng)概要設(shè)計根據(jù)長期軟件開發(fā)經(jīng)驗,軟件架構(gòu)是手機(jī)軟件系統(tǒng)開發(fā)面臨的主要矛盾,基于成熟的軟件架構(gòu),才能設(shè)計出優(yōu)秀的手機(jī)系統(tǒng)。良好的軟件架構(gòu)能夠有力的支持和促進(jìn)系統(tǒng)的設(shè)計與實現(xiàn),主要包括組織設(shè)計模塊,定義手機(jī)系統(tǒng)的與底層android庫的接口,模塊之間的調(diào)用和協(xié)作,主系統(tǒng)涵蓋的各個子系統(tǒng)模塊的組成,當(dāng)前系統(tǒng)架構(gòu)風(fēng)格和用戶具體界面需求等方面。信息交互。系統(tǒng)詳細(xì)設(shè)計兩個具體模塊:手機(jī)客戶端軟件系統(tǒng)針對手機(jī)用戶的需求特點(diǎn),采用了android手機(jī)客戶端技術(shù),使用基于MVC的多層架構(gòu)設(shè)計,加以圖形化界面調(diào)用android系統(tǒng)庫中插件,為方便用戶不定期的對圖片進(jìn)行管理,系統(tǒng)軟件運(yùn)行在手機(jī)的android平臺上。客戶端圖片管理軟件采用動態(tài)刷新,使用android系統(tǒng)多線程技術(shù),實現(xiàn)對不同類型不同位置的所有圖片的管理,根據(jù)上一章節(jié)的功能性和非功能性需求分析可知,系統(tǒng)需要將圖片的類型,圖片數(shù)量等信息匯總到前端界面顯示的同時,還需要對手機(jī)存儲空間中的圖片進(jìn)行遍歷更新。系統(tǒng)設(shè)計成兩大核心模塊:圖片分類模塊和圖片管理模塊。軟件架構(gòu)針對用戶的具體需求和系統(tǒng)面向的圖片管理,采用面向?qū)ο蟮木幊趟枷?,參考基于JAVA的MVC各個層次架構(gòu)特點(diǎn),調(diào)用android系統(tǒng)庫和控件,來完成系統(tǒng)主要功能。系統(tǒng)的層次的特點(diǎn)是以手機(jī)存儲空間內(nèi)的圖片集合為核心,根據(jù)用戶,將不同的功能劃分為多個模塊。圖片分類模塊采用設(shè)計的前端界面進(jìn)行區(qū)分式顯示,體現(xiàn)不同的業(yè)務(wù)模型。圖片管理模塊調(diào)用控件和服務(wù),對圖片進(jìn)行相應(yīng)的操作。3.1.1系統(tǒng)物理架構(gòu)設(shè)計基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第15頁。系統(tǒng)的物理架構(gòu)基于android手機(jī)存儲設(shè)備,核心圍繞手機(jī)存儲設(shè)備上的各類圖片展開,為手機(jī)用戶提供具體的圖片管理功能。用戶通過基于android的客戶端架構(gòu),使用系統(tǒng)訪問手機(jī)存儲設(shè)備,手機(jī)用戶,用戶使用軟件相應(yīng)功能對圖片進(jìn)行操作,通過android操作系統(tǒng)服務(wù)與內(nèi)存和SD卡上圖片進(jìn)行交互。圖片管理系統(tǒng)物理拓?fù)浣Y(jié)構(gòu)如下圖所示所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第15頁。圖3-1圖片管理系統(tǒng)物理拓?fù)浣Y(jié)構(gòu)圖Figure3-1Filemanagementsystemmapforphysicaltopologystructure圖片管理系統(tǒng)設(shè)計時采用了基于android系統(tǒng)開源的性質(zhì),只要滿足系統(tǒng)識別圖片的范疇,用戶在不同的android手機(jī)上都可以使用,同時,google公司開放了底層系統(tǒng)庫,系統(tǒng)可以以程序接口的方式實現(xiàn)良好調(diào)用,所以圖片管理系統(tǒng)設(shè)計平臺采用了android操作系統(tǒng)。3.1.2系統(tǒng)邏輯架構(gòu)設(shè)計分層是軟件設(shè)計中非常重要的思想,特別是面對較大的軟件系統(tǒng)。分而治之是計算機(jī)中經(jīng)常采用的一種方法。因此按照軟件工程分層考慮的理論,我們對此系統(tǒng)進(jìn)行分層設(shè)計。天元物聯(lián)路燈管理系統(tǒng)按照MVC的設(shè)計模式將系統(tǒng)劃分為界面層、業(yè)務(wù)層、協(xié)議層、數(shù)據(jù)庫層四個層次。此系統(tǒng)采用模塊化設(shè)計,方便其他開發(fā)語言的綁定。在系統(tǒng)結(jié)構(gòu)中,每個邏輯層向上層提供程序接口,供給上層調(diào)用完成相應(yīng)功能。系統(tǒng)邏輯結(jié)構(gòu)如圖3-2所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第16頁。面對數(shù)據(jù)處理量較大,設(shè)計規(guī)模較大的軟件系統(tǒng),軟件層次清晰是基本要求。軟件架構(gòu)分層是系統(tǒng)設(shè)計中廣泛采用的方法。為了實現(xiàn)軟件層次清晰的要求,對圖片管理系統(tǒng)的各個模塊劃分層次。按照MVC 模式開發(fā)應(yīng)用層的手機(jī)程序分為界面層,業(yè)務(wù)層,服務(wù)層,通過組件的重用降低模塊之間的耦合,圖片管理系統(tǒng)的邏輯結(jié)構(gòu)如下圖所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第16頁。圖3-2圖片管理系統(tǒng)邏輯結(jié)構(gòu)Figure2-2Filemanagementsystemlogicstructure1、界面層界面層實現(xiàn)圖片管理系統(tǒng)的前端顯示,包括圖片瀏覽界面,圖片管理界面。界面層為軟件使用者提供與手機(jī)交互的用戶界面,界面層與用戶的交互最為直接,能夠引導(dǎo)用戶自己完成圖片管理的相應(yīng)的操作。圖片管理系統(tǒng)界面層顯示功能采用多窗體九宮格的顯示框架,android系統(tǒng)的自帶控件,xml配置文件等生成界面。2、業(yè)務(wù)層基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第17頁。業(yè)務(wù)層在架構(gòu)中體現(xiàn)系統(tǒng)核心價值,主要集中在業(yè)務(wù)規(guī)則的制定、業(yè)務(wù)流程的實現(xiàn)等與業(yè)務(wù)需求有關(guān)的系統(tǒng)設(shè)計,將軟件模塊抽象成對數(shù)據(jù)進(jìn)行處理的組件。基于需求分析獲得的主要功能性需求,將系統(tǒng)業(yè)務(wù)邏輯分為軟件分類模塊,軟件管理模塊?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第17頁。為實現(xiàn)層次的弱耦合結(jié)構(gòu),業(yè)務(wù)層在界面層和數(shù)據(jù)層之間起到承上啟下的作用,軟件分類和軟件管理等業(yè)務(wù)模塊通過調(diào)用android系統(tǒng)服務(wù)和系統(tǒng)庫對數(shù)據(jù)層(在本系統(tǒng)中對應(yīng)文件層)進(jìn)行訪問,完成圖片分類和圖片管理的各種業(yè)務(wù)邏輯,滿足需求分析中的所獲取的具體功能需求。圖片分類模塊在界面層下發(fā)的數(shù)據(jù)基礎(chǔ)上,采集數(shù)據(jù)層的數(shù)據(jù)并做相應(yīng)的處理,功能實現(xiàn)之后,上傳到界面層前端UI予以顯示。圖片管理模塊實現(xiàn)圖片管理的具體的功能之后,將操作體現(xiàn)到到圖片層,通過調(diào)用android系統(tǒng)服務(wù)和系統(tǒng)庫與數(shù)據(jù)層進(jìn)行交互,數(shù)據(jù)層對圖片層各種數(shù)據(jù)進(jìn)行更新。業(yè)務(wù)邏輯層在體系架構(gòu)中的位置很關(guān)鍵,對于數(shù)據(jù)訪問層而言,它是調(diào)用者;對于表示層而言,它卻是被調(diào)用者。在相同android系統(tǒng)服務(wù)和系統(tǒng)庫以及面向的存儲設(shè)備上的手機(jī)圖片大相徑庭的基礎(chǔ)上,業(yè)務(wù)層的不同的設(shè)計與實現(xiàn)可能會導(dǎo)致形成不同的圖片管理系統(tǒng),換言之,各種圖片管理系統(tǒng)之間的差別就體現(xiàn)在業(yè)務(wù)層的設(shè)計與實現(xiàn)的差別,因此系統(tǒng)的設(shè)計和實現(xiàn)的關(guān)鍵體現(xiàn)在業(yè)務(wù)層的設(shè)計與實現(xiàn)。3、android系統(tǒng)服務(wù)和系統(tǒng)庫android系統(tǒng)庫是google專門開發(fā)設(shè)計的一套成熟庫,為支持java,完善系統(tǒng)的開源性,以android服務(wù)為基礎(chǔ),構(gòu)建可以多次復(fù)用的圖片管理業(yè)務(wù),減少重復(fù)開發(fā),將軟件開發(fā)的中心從圖片管理功能實現(xiàn)的細(xì)節(jié)轉(zhuǎn)移到擴(kuò)展系統(tǒng)庫的支持,在android系統(tǒng)服務(wù)的支持下,android系統(tǒng)庫的引入大幅度提到軟件設(shè)計和實現(xiàn)的效率。圖片管理系統(tǒng)所使用的android系統(tǒng)庫結(jié)構(gòu)如下圖所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第18頁?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第18頁。圖3-3Android系統(tǒng)庫結(jié)構(gòu)圖Figure3-3Androidsystemlibrarystructurediagram4、文件層文件層也就是數(shù)據(jù)層,文件系統(tǒng)將數(shù)據(jù)存儲在硬件上,系統(tǒng)內(nèi)核通過驅(qū)動將其物理地址映射到/dev目錄下拉,使得硬件可以像訪問文件一樣進(jìn)行使用。物理地址可以像訪問文件一樣進(jìn)行使用。物理地址通過通過映射之后將快設(shè)備掛載至目錄就可以供業(yè)務(wù)邏輯層各個模塊訪問操作?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第19頁。
第4章系統(tǒng)詳細(xì)設(shè)計基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第19頁。系統(tǒng)詳細(xì)設(shè)計在需求分析和系統(tǒng)概要設(shè)計完成的基礎(chǔ)上,完成各個業(yè)務(wù)邏輯的設(shè)計,為了下一章的系統(tǒng)實現(xiàn)打好基礎(chǔ)。本章根據(jù)系統(tǒng)層次劃分,將從界面設(shè)計、圖片管理模塊設(shè)計、圖片分類模塊設(shè)計等方面,其中系統(tǒng)主要功能模塊主要位于業(yè)務(wù)邏輯層,通過界面層完成圖片瀏覽,通過業(yè)務(wù)層實現(xiàn)圖片操作。本章將結(jié)合android系統(tǒng)的特點(diǎn)及java相關(guān)技術(shù),實現(xiàn)圖片管理器中各個java功能類設(shè)計,不同模塊之間的訪問,圖片分類和管理的實現(xiàn)以及管理圖片前端界面層顯示信息的實現(xiàn)。我們將各個功能模塊進(jìn)一步劃分,劃分的功能模塊與各個子系統(tǒng)功能詳細(xì)設(shè)計說明如下:4.1界面詳細(xì)設(shè)計1、系統(tǒng)總體包圖在圖片管理系統(tǒng)開發(fā)中,包圖用來表述功能組命名空間的組織層次。圖片管理系統(tǒng)的業(yè)務(wù)層包由res包,adapter、bean、impl、util、filemanger、ansyloaderfavdb等包組成。各個包之間的依賴關(guān)系如下圖所示:圖4-1系統(tǒng)總體包圖基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第20頁。Figure4-1ThesystemoverallpackageFigure基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第20頁。在核心filemanger包基礎(chǔ)上,各個功能包實現(xiàn)具體功能,filemanger包里圖片分類和圖片管理功能包,調(diào)用adapter包匯總數(shù)據(jù),adapter包調(diào)用bean包獲得各個類型圖片的詳細(xì)信息,until包調(diào)用favdb、fileutil、impl包完成圖片的增加刪除修改等操作。圖片管理主要系統(tǒng)包信息如下表所示:系統(tǒng)包名主要功能com.tarena.filemanger主題界面Activity類匯總包c(diǎn)om.tarena.filemanger.adapter基礎(chǔ)數(shù)據(jù)適配器包c(diǎn)om.tarena.filemanger.bean應(yīng)用程序素材包c(diǎn)om.tarena.filemanger.favdb數(shù)據(jù)庫連接包c(diǎn)om.tarena.filemanger.fileutil程序操作包c(diǎn)om.tarena.filemanger.impl.ansyloader圖片操作包c(diǎn)om.tarena.filemanger.util系統(tǒng)工具包圖4-2圖片管理主要系統(tǒng)包Figure4-2Documentmanagementsystempackage4.2Android資源設(shè)計此處所說的資源為非編碼設(shè)計部分,以本系統(tǒng)來說,系統(tǒng)桌面特效需要使用一些動畫來顯示,需要一些圖片來設(shè)置,提示信息需要使用一些字符串來顯示,這些常量值、布局圖片、菜單、圖片、原生圖片、動畫、XML圖片等就可以稱為系統(tǒng)資源。圖片管理系統(tǒng)的資源圖如下圖所示基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第21頁。圖4-3圖片管理系統(tǒng)的資源圖基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第21頁。Figure4-3Resourcemapofthedocumentmanagementsystem系統(tǒng)通過調(diào)用資源編譯工具AAPT來編譯這些資源文件,資源圖片要有一定的布局和格式。其類型和目錄結(jié)構(gòu)如下表所示:目錄結(jié)構(gòu)資源類型res/anim/XML動畫文件res/drawable位圖文件res/layout/XML布局文件res/values/各種XML資源文件Arrays.xml:XML數(shù)組文件Colors.xml:XML顏色文件Dimens.xml:XML尺寸文件Styles.xml:XML樣式文件res/xml任意的XML文件res/raw直接復(fù)制到設(shè)備上的原生文件res/menuXML菜單文件系統(tǒng)資源的使用分為在代碼中使用和在其他資源圖片中引用該資源圖片。在編譯圖片管理系統(tǒng)時,自動生成一個R類,在該類中又生成了相應(yīng)的內(nèi)部類。視圖查看模塊基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第22頁。視圖查看模塊是一個GUI界面,是直接展示給用戶觀看效果的模塊,這對用戶對界面的友好性有一定的難度,我們采用了樹形菜單的和小圖標(biāo)的圖形用戶界面,這樣的話就能很好的解決了圖形用戶界面基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第22頁。圖3-4視圖查看模塊的xml靜態(tài)圖Figure3-4xmlstaticdiagramviewViewmodulemain.xml文件為系統(tǒng)主界面配置圖,包含<RelativeLayout><ViewFlipper><LinearLayout>標(biāo)簽,實現(xiàn)各個按鈕和標(biāo)簽,文字,標(biāo)簽,圖片,界面布局的顯示,調(diào)用如上圖的各個分界面和各個控件的xml界面設(shè)計文件,其中file_explorer.xml為圖片分類模塊界面設(shè)計文件,alert_dialog.xml為圖片管理模塊界面文件設(shè)計,noflie_item.xml為圖片查找界面設(shè)計文件,app_item.xml為圖片操作提醒界面設(shè)計文件。4.3圖片分類模塊詳細(xì)設(shè)計基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第23頁。系統(tǒng)分類模塊為系統(tǒng)的核心模塊之一,為圖片管理提供分類支持,調(diào)用com.tarena.filemanger.CategoryAct類初始化界面,完成對所有類型圖片的匯總,匯總之后進(jìn)行以網(wǎng)格化分類顯示。CategoryAct顯示具體類設(shè)計如下圖所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第23頁。圖4-5CategoryAct顯示具體類圖Figure4-5CategoryActdisplayspecificclassdiagram基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第24頁。CategoryAct類繼承了Activity父類和OnItemClickListener>接口,通過Activity父類屬性實現(xiàn)界面,通過OnItemClickListener實現(xiàn)對界面事件的監(jiān)聽?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第24頁。通過調(diào)用picture_count,sd_card_capacity_label,fav_count以及LinearLayout實體。通過調(diào)用setview()函數(shù)實現(xiàn)對圖片類型和數(shù)量的匯總顯示,對每個單元的內(nèi)容以及UI格式進(jìn)行描述;通過readSDcard()函數(shù)實現(xiàn)對SD卡存儲容量的顯示;通過StarThreadGroup()啟動對圖片的后臺支持。CategoryAct合作圖如下圖所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第25頁?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第25頁。圖4-6CategoryAct合作圖Figure4-6CategoryActcollaborationdiagramonCreat()完成前端界面和后臺服務(wù)的初始化,通過調(diào)用setView()初始化系統(tǒng)前端界面的同時,調(diào)用StarThreadGroup()啟動后臺服務(wù)支持。在setview顯示前端界面時,setView()函數(shù)調(diào)用readSDCard()函數(shù)獲得SD卡容量和剩余存儲量在圖片分類的九宮格頁面下端顯示。onCreate()函數(shù)調(diào)用圖,如下圖所示:圖4-7onCreate()函數(shù)調(diào)用圖Figure4-7onCreate()functioncallgraphonItemClick()調(diào)用bean包下面圖片get方法獲得圖片信息,對應(yīng)界面菜單點(diǎn)擊相應(yīng)相對應(yīng)。onItemClick()函數(shù)調(diào)用圖如下圖所示:圖4-8onItemClick()函數(shù)調(diào)用圖Figure4-8onItemClick()functioncallgraph4.4圖片管理模塊詳細(xì)設(shè)計基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第26頁。圖片管理模塊為系統(tǒng)功能實現(xiàn)的核心模塊,圖片管理的Activity類FileMangerAct與圖片分類模塊的CategoryAct類進(jìn)行切換,在圖片分類的基礎(chǔ)上對圖片進(jìn)行操作。FileMangerAct圖片管理類具體類設(shè)計如下圖所示:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第26頁。
圖4-9FileMangerAct圖片管理類具體類Figure4-9FileMangerActfilemanagementclassspecificclass基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第27頁。FileMangerAct首先實例化adapter,通過adapter對圖片進(jìn)行訪問,然后通過圖片工作操作類Filehelp實現(xiàn)對圖片各個操作,包含操作MENU_FAV收藏MENU_DELETE刪除MENU_COPY復(fù)制MENU_RENNAME重命名MENU_MOVE剪貼(移動)MENU_MOREINFO詳情等操作,在完成操作之后通過intent消息與顯示界面交互,進(jìn)行圖片信息的刷新。文件操作具體流程圖如下圖:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第27頁。圖4-10圖片文件操作具體流程圖Figure4-10Fileoperationsspecificflowchart基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第28頁。為實現(xiàn)對圖片的單獨(dú)顯示,系統(tǒng)設(shè)計了MyAdapter類,getCount()getItem(intposition);getItemId(intposition);getView(intposition,View)實現(xiàn)對圖片數(shù)量,菜單項,菜單項標(biāo)號以及系統(tǒng)圖標(biāo)標(biāo)號,單獨(dú)顯示;具體類圖如下圖:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第28頁。圖4-11圖片操作具體具體類圖Figure4-11Fileoperationsspecificconcreteclassdiagram基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第29頁。為實現(xiàn)圖片復(fù)制,刪除,剪切,重命名等操作,系統(tǒng)設(shè)計了Filehelper類。對不同類型的圖片設(shè)計通用的方法copyfile(),delfile(),movefile(),delfile();通過對方法的參數(shù)輸入不同完成對方法的初始化,實現(xiàn)對不同圖片的通用操作,系統(tǒng)設(shè)計類圖如下:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第29頁。圖4-12系統(tǒng)設(shè)計類圖Figure4-12Systemdesignclassdiagram基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第30頁。系統(tǒng)圖片管理操作,通過設(shè)計FileMangerAct類,MyAdapter類,F(xiàn)ilehelper類,通過三個類的實例化,以及類中各個方法的調(diào)用完成功能。模塊總體類圖和時序圖如下:基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第30頁。圖4-13模塊總體類圖Figure4-13Moduleoverallclassdiagram基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第31頁?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第31頁。圖4-14模塊總體時序圖Figure4-14Themoduleoveralltimingfigure基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第32頁。
基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第32頁。5.16分享圖片5.7布局設(shè)計5.7.1TabActivity的布局實現(xiàn)圖5-4TabActivity的布局實現(xiàn)圖Figure5-4TheTabActivitylayoutFigureTabActivity的布局是頂部一個線性布局,有兩個按鈕,用于切換視圖,下面是一個層疊布局(tabcontent),用于顯示子Activity的內(nèi)容.這里需要注意的是,系統(tǒng)把默認(rèn)的TabWidget(tabs)設(shè)為隱藏,用系統(tǒng)線性布局里面的按鈕代替TabWidget的功能。5.7.2圖片瀏覽頁面的布局實現(xiàn)基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第33頁。圖片瀏覽頁面就相對簡單一點(diǎn),外部是一個相對布局,底部是一個線性布局,線性布局里面有兩個操作按鈕,確定和取消.只有在執(zhí)行操作的時候,底部這個布局才會顯示,中間是一個listview用來顯示當(dāng)前瀏覽的圖片條目?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第33頁。5.7.3分類瀏覽布局設(shè)計分類瀏覽的布局稍微復(fù)雜一點(diǎn),這里系統(tǒng)先看一下布局導(dǎo)航圖。圖5-5布局導(dǎo)航圖Figure5-5Layoutnavigationalcharts第一層:一個現(xiàn)象布局第二層:一個viewfliper第三層:viewfliper里面的兩個線性布局第一個線性布局,就是放系統(tǒng)主頁面的分類模塊,第二個線性布局,用于顯示系統(tǒng)當(dāng)前點(diǎn)擊某一個分類的時候用于展示系統(tǒng)的分類數(shù)據(jù).其實就是一個listview,給予不同的數(shù)據(jù),顯示不同的樣式.(比如音樂,視頻,文本,圖片等等).基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第34頁。第四層:類別顯示層,系統(tǒng)的設(shè)計界面有9個類別,其實對應(yīng)了三個垂直的線性布局,每一個線性布局里面有有三個水平的線性布局.任何這個水平的線性布局里面有三個子view分別是imageview,和2個textview,下面是一個線性布局顯示當(dāng)前SD卡的內(nèi)存使用.,可用進(jìn)度條顯示?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第34頁。分類瀏覽的頁面布局就是這樣來設(shè)計,這里之所以用一個viewfliper是因為系統(tǒng)在來回點(diǎn)擊分類的時候,用viewfliper切換視圖比較方便而且可以做比較華麗的動畫效果。5.8部分功能編碼實現(xiàn)這里系統(tǒng)來詳細(xì)介紹一下整個程序的數(shù)據(jù)獲取,和加載的流程,以及頁面跳轉(zhuǎn)刷新的過程.5.8.1圖片分類信息數(shù)據(jù)的獲取在安卓系統(tǒng)中會自動建立一個媒體數(shù)據(jù)庫,里面存放系統(tǒng)的圖像信息,包括大小,路徑,圖片名.詳細(xì)的屬性可以打開數(shù)據(jù)庫查看系統(tǒng)需要的屬性,這里系統(tǒng)就把系統(tǒng)所需要獲取的數(shù)據(jù)列出來就行了.至于別的文件系統(tǒng)就需要另外處理來獲取數(shù)據(jù),系統(tǒng)可以調(diào)用linux命令來查詢圖片系統(tǒng)中的所有系統(tǒng)需要查詢的圖片.以下為代碼介紹:1、圖片數(shù)據(jù)的獲取基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第35頁。獲取數(shù)據(jù)的游標(biāo),有了它系統(tǒng)就可在數(shù)據(jù)庫中查詢所有圖片的信息基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第35頁。Cursorcursor=context.getContentResolver().query(Media.EXTERNAL_CONTENT_URI,null,null,null,null);publicstaticArrayList<T>getdata(Cursorcursor){ArrayList<T>musics=newArrayList<TMusic>();TMusicmusic;if(cursor.=null&&cursor.getCount()>0){for(cursor.moveToFirst();.cursor.isAfterLast();cursor.moveToNext()){music=newT();music.setcnme(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.AudioColumns.TITLE)));music.setMusicpath(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.AudioColumns.DATA)));music.setDurction(cursor.getString(cursor.getColumnIndex(MediaStore.Audio.AudioColumns.DURATION)));musics.add(music);}cursor.close();}returnmusics;}代碼5-1圖片數(shù)據(jù)的獲取Code5-1Musicfiledataaccess2、系統(tǒng)緩存圖片的數(shù)據(jù)獲取Cursorcursor=context.getContentResolver().query(vider.Store..Media.EXTERNAL_CONTENT_URI,null,null,null,null);代碼5-2緩存圖片的數(shù)據(jù)獲取Code5-2Dataacquisitionofthevideofile基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第36頁。這個游標(biāo)基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第36頁。publicstaticArrayList<TVideo>getVideo(Cursorcursor){ArrayList<TVideo>videos=newArrayList<TVideo>();TVideovideo;if(cursor.=null&&cursor.getCount()>0){for(cursor.moveToFirst();.cursor.isAfterLast();cursor.moveToNext()){video=newTVideo();video.setVideoname(cursor.getString(cursor.getColumnIndex("_display_name")));video.setVideosize(cursor.getString(cursor.getColumnIndex("_size")));Stringpath=cursor.getString(cursor.getColumnIndex("_data"));video.setVideopath(path);Bitmapbitmap=ThumbnailUtils.createVideoThumbnail(path,Thumbnails.MINI_KIND);video.setVideothumbnail(bitmap);videos.add(video);}cursor.close();}returnvideos;}代碼5-3獲取這個圖片的縮略圖Code5-3Getthumbnailsofthevideofiles這里需要說明的是用的ThumbnailUtils.createVideoThumbnail(path,Thumbnails.MINI_KIND)代碼,是根據(jù)系統(tǒng)視頻所在SD卡的絕對路徑,獲取這個視頻圖片的縮略圖。3、圖片信息的獲取Cursorcursor=context.getContentResolver().query(vider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI,null,null,null,null);代碼5-4圖片信息的獲取Code5-4Getthepictureinformationcode基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第37頁。上面是獲取圖片數(shù)據(jù)查詢的游標(biāo),根據(jù)這個游標(biāo)系統(tǒng)可以查詢出所有的圖片信息。基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第37頁。publicstaticArrayList<TImage>getImage(Cursorcursor){ArrayList<TImage>images=newArrayList<TImage>();TImageimage=null;if(cursor.=null&&cursor.getCount()>0){for(cursor.moveToFirst();.cursor.isAfterLast();cursor.moveToNext()){image=newTImage();Stringfilepath=cursor.getString(cursor.getColumnIndex("_data"));image.setImgpath(filepath);image.setImgname(cursor.getString(cursor.getColumnIndex("_display_name")));image.setSize(cursor.getString(cursor.getColumnIndex("_size")));images.add(image);}cursor.close();}returnimages;}代碼5-5圖片信息的獲取系統(tǒng)這里需要解釋的是這里系統(tǒng)只取path,而不是把圖片直接轉(zhuǎn)換成縮略圖就拿出來顯示.因為系統(tǒng)把圖片轉(zhuǎn)換成bitmap是需要耗費(fèi)一定的時間,這樣會影響用戶體驗.4、手機(jī)拍攝圖片的獲取基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第38頁。首先系統(tǒng)需要了解系統(tǒng)的一個類localpictureInfo,這個類里面包含了系統(tǒng)所有安裝程序的一個信息,比如pictureName,versionName,ActivityInfo,applicationInfo等等都是系統(tǒng)需要的信息,這些信息也是系統(tǒng)在mainfest中注冊的信息?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第38頁。PackageManagerpackageManager=context.getPackageManager();//用包管理器獲取所有手機(jī)拍攝的照片ArrayList<PackageInfo> listInfos=(ArrayList<PackageInfo>)packageManager.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES|PackageManager.GET_ACTIVITIES);ArrayList<PackageInfo>userpackinfors=newArrayList<PackageInfo>();//遍歷所有程序找出手機(jī)拍攝的照片for(PackageInfotemp:listInfos){//獲取每一個程序的applicationInfoApplicationInfoaInfo=temp.applicationInfo;booleanflag=false;//判斷是是否是可編輯應(yīng)用if((aInfo.flags&ApplicationInfo.FLAG_UPDATED_SYSTEM_APP).=0){flag=true;//判斷是否是系統(tǒng)應(yīng)用}elseif((aInfo.flags&ApplicationInfo.FLAG_SYSTEM)==0){flag=true;}//如果flag為true則是用戶拍攝的應(yīng)用if(flag){//添加到新的集合中userpackinfors.add(temp);}}代碼5-6安裝應(yīng)用程序的獲取Code5-6Acquisitionofinstalledapplications通過上面的方法系統(tǒng)可以獲取所有系統(tǒng)中,用戶安裝的應(yīng)用程序.5.8.2系統(tǒng)截圖圖片基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第39頁。系統(tǒng)截圖系統(tǒng)通過訪問系統(tǒng)數(shù)據(jù)庫是沒有記錄的,所有就需要系統(tǒng)自己想辦法去獲取,大家可能會想到用遞歸遍歷所有圖片,根據(jù)后綴名稱獲取指定圖片,然后在放到集合中.但是系統(tǒng)需要考慮執(zhí)行效率,哪樣的話效率可能比較低下.下面系統(tǒng)來介紹一種方法就是通過LINUX命令獲取這些圖片.由于安卓系統(tǒng)基于linux內(nèi)核,所以它支持很多l(xiāng)inux命令,使用ls-r圖片遍歷命令?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第39頁。//下面就是調(diào)用linux命令的方法baseScanDir是系統(tǒng)要遍歷的根目錄Processprocess=Runtime.getRuntime().exec("/system/bin/ls-R"+baseScanDir);系統(tǒng)可以用輸入流獲取ls-r列出的圖片信息.reader=newBufferedReader(newInputStreamReader(process.getInputStream()));系統(tǒng)在讀取輸入流的時候,可以用正則來獲取所有系統(tǒng)需要的圖片.while((read=reader.readLine()).=null){//判斷是否為目錄行Patternp=Ppile(baseScanDir+"(.+?):",Pattern.CASE_INSENSITIVE);Matcherm=p.matcher(read);//如果為目錄行,則記錄為當(dāng)前目錄if(m.find()){strNowDir=m.group(1);continue;}//判斷圖片類型PatternexP=Ppile("(.txt$|.zip$|.rar$|.gz$|.html$|.txt$|.doc$|.csv$|.xml$|.apk$)",Pattern.CASE_INSENSITIVE);MatcherexM=exP.matcher(read.toLowerCase());if(exM.find()){StringnowExName=exM.group();if(".apk".equalsIgnoreCase(nowExName)){apkArrayList.add(baseScanDir+""+strNowDir+"/"+read);}elseif(".txt".equalsIgnoreCase(nowExName)||".doc".equalsIgnoreCase(nowExName)||".xml".equalsIgnoreCase(nowExName)||".csv".equalsIgnoreCase(nowExName)){docArrayList.add(baseScanDir+""+strNowDir+"/"+read);}elseif(".zip".equalsIgnoreCase(nowExName)||".rar".equalsIgnoreCase(nowExName)){zipArrayList.add(baseScanDir+""+strNowDir+"/"+read);}}}代碼5-7壓縮圖片代碼Code5-7Compressedfilecode上面的方法就是把系統(tǒng)需要的截圖圖片,壓縮圖片放到三個ArrayList中,在把它放到一個HashMap中.5.8.3分類子頁面當(dāng)系統(tǒng)到這個頁面,如果讓所有分類的數(shù)據(jù)一次性加載完,再去執(zhí)行別的操作,恐怕就必須ANR了,這里系統(tǒng)需要開啟5條線程,分別加載數(shù)據(jù),在用一個handle加載當(dāng)前圖片的數(shù)目.當(dāng)系統(tǒng)點(diǎn)擊其中一個分類的時候,在把當(dāng)前獲取的數(shù)據(jù)加ViewFliper的第2個頁面,也就是第二層下面的listview,這個listview是系統(tǒng)幾個分類公用的視圖.基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第40頁。當(dāng)系統(tǒng)點(diǎn)擊某一個分類的時候,系統(tǒng)需要標(biāo)示出是哪一個分類,并把當(dāng)前對應(yīng)的Adapter放到listview中,并且要標(biāo)示出系統(tǒng)當(dāng)前點(diǎn)擊的是哪一個分類,以方便系統(tǒng)在listview中執(zhí)行點(diǎn)擊操作,當(dāng)系統(tǒng)點(diǎn)擊當(dāng)前的listview中某一個條目的時候,可以根據(jù)當(dāng)前顯示的數(shù)據(jù)執(zhí)行相應(yīng)的操作,比如當(dāng)前是圖片,系統(tǒng)點(diǎn)擊listview中的條目的時候,執(zhí)行圖片瀏覽查看.這里系統(tǒng)需要了解,每個文本對應(yīng)的各種mimetype,和對應(yīng)的intent,根據(jù)系統(tǒng)的圖片類型,獲取對應(yīng)的intent,然后starActivity(intent),它會自動列出可以接收此uri的程序,讓系統(tǒng)選擇.這里系統(tǒng)只需要確定系統(tǒng)沒一個圖片的類型就行了.(這里可以參考com.taena.filemanger.util包下的MyInten工具類里面的很多靜態(tài)方法,可以獲取指定uri的intent),如果是系統(tǒng)不知道的圖片類型,這里系統(tǒng)可以用一個方法?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第40頁。publicstaticvoidopenFile(Contextcontext,Filefile){//Uriuri=Uri.parse("file://"+file.getAbsolutePath());Intentintent=newIntent();intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//設(shè)置intent的Action屬性intent.setAction(Intent.ACTION_VIEW);//獲取圖片file的MIME類型Stringtype=MIMEType.getMiMeType(file);//設(shè)置intent的data和Type屬性。intent.setDataAndType(/*uri*/Uri.fromFile(file),type);//跳轉(zhuǎn)context.startActivity(intent);}代碼5-8判斷圖片類型Code5-8Determinethefiletype去打開這個圖片,這里系統(tǒng)只需要把這個圖片的路徑傳遞過來,系統(tǒng)會默認(rèn)去判斷系統(tǒng)給圖片是什么類型,去啟動對應(yīng)的activity.5.8.4圖片瀏覽頁面基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第41頁。圖片瀏覽頁面,是根據(jù)當(dāng)前圖片的絕對路徑來列出“當(dāng)前目錄”所有的圖片,當(dāng)系統(tǒng)點(diǎn)擊一個圖片的時候,可以根據(jù)這個圖片類型打開這個圖片,如果是一個目錄的話.系統(tǒng)就打開了這個目錄.在列出這個目錄的所有圖片,依次類推,當(dāng)系統(tǒng)在深層目錄的時候點(diǎn)擊back鍵,會根據(jù)系統(tǒng)進(jìn)來的層次依次返回,當(dāng)系統(tǒng)到達(dá)跟目錄的時候,彈出一個提示,是否退出應(yīng)用程序.這個頁面的大致邏輯就是這樣基于Android的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第42頁。核心的顯示方法?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第41頁?;贏ndroid的圖片管理器設(shè)計與實現(xiàn)畢業(yè)設(shè)計(論文)全文共65頁,當(dāng)前為第42頁。/***通過當(dāng)前路徑在listView顯示所有圖片*@paramfilePath*/privatevoidgetFileDir(StringfilePath){//記錄當(dāng)前的目錄nowfilepath=filePath;items=newArrayList<String>();paths=newArrayList<String>();Filef=newFile(filePath);//列出當(dāng)前目錄下的所有圖片F(xiàn)ile[]files=f.listFiles();//判斷是否是進(jìn)入目錄之后if(.filePath.equals(rootPath)){items.add("b1");paths.add(rootPath);items.add("b2");paths.add(f.getParent());}/*將所有圖片加入ArrayList中*/for(inti=0;i<files.length;i++){Filefile=files[i];items.add(file.getName());paths.add(file.getPath());}//添
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 地暖太陽能工程施工方案
- 管道跨越施工方案
- 醫(yī)療機(jī)構(gòu)水污染物排放的法律責(zé)任與監(jiān)管措施
- 【專精特新】印制電路板行業(yè)市場份額證明材料(智研咨詢發(fā)布)
- 食品加工企業(yè)食品安全事件應(yīng)急預(yù)案
- 基于大觀念的高中英語單元整體教學(xué)設(shè)計探究
- 湖北省2024-2025學(xué)年高二上學(xué)期1月期末物理試題(原卷版)
- 四川羅渡中學(xué)20172018人教地理必修二綜合訓(xùn)練(四)及解析
- 北京市房山區(qū)2024-2025學(xué)年高三上學(xué)期期末學(xué)業(yè)水平調(diào)研(二)物理試卷2
- 安徽省亳州市2024-2025學(xué)年高二上學(xué)期期末考試地理試卷
- 師德師風(fēng)培訓(xùn)筆記
- 養(yǎng)老護(hù)理練習(xí)題庫(含答案)
- 2025年南京城市職業(yè)學(xué)院單招職業(yè)技能測試題庫完整
- 醫(yī)療廢物相關(guān)法律法規(guī)培訓(xùn)課件
- 特種設(shè)備生產(chǎn)和充裝單位許可規(guī)則
- 女生自尊自愛知識講座
- 2025年兒童青少年近視防控白皮書
- 小學(xué)生春季傳染病預(yù)防
- deepseek在智慧城市建設(shè)中的應(yīng)用前景
- 2025年九江職業(yè)大學(xué)高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 石塑復(fù)合木地板施工方案
評論
0/150
提交評論