孫素華
摘要:本文通過對文件管理器的功能需求進行分析,依據(jù)軟件開發(fā)的流程進行模塊設(shè)計和詳細的代碼編寫,并在PC機搭建的虛擬平臺中進行了軟件測試。
關(guān)鍵詞:Android;智能手機;文件管理器;Linux
Android是Goosle公司于2007年11月5日宣布的基于Linux平臺的開源手機操作系統(tǒng)的名稱。現(xiàn)在很多用戶都已經(jīng)開始使用ANDROID智能手機,但是,智能系統(tǒng)軟件開發(fā)目前還處于起步階段。本研究旨在探索一種不但支持本地文件,同時也能打開媒體文件,瀏覽圖片,編輯文本,甚至可以遠程播放流媒體文件。作為一款手機文件管理類軟件,文件瀏覽器支持本地文件管理、方便用戶對手機和SD卡上的文件/文件夾進行各種操作;提供了任務(wù)管理、程序管理功能,用戶可以隨時查看當(dāng)前的任務(wù)進程,或者卸載手機中的應(yīng)用程序,方便手機用戶的管理文件的基本需求。
1概要設(shè)計
1.1?背景
隨著嵌入式系統(tǒng)的不斷發(fā)展和多學(xué)科技術(shù)的綜合應(yīng)用,手機具備的功能也從單一的通話手段,短信服務(wù)等,發(fā)展成為以嵌入式系統(tǒng)為基礎(chǔ),集GPRS(運用分組無線業(yè)務(wù))上網(wǎng)、彩信,藍牙、多媒體文件播放多種應(yīng)用程序于一身的多功能智能設(shè)備。[2]智能手機(Smartphone),是指像個人電腦一樣,具有獨立的操作系統(tǒng),可以由用戶自行安裝軟件、游戲等第三方服務(wù)商提供的程序,通過此類程序來不斷對手機的功能進行擴充,并可以通過移動通訊網(wǎng)絡(luò)來實現(xiàn)無線網(wǎng)絡(luò)接入的一類手機。目前的智能機主流應(yīng)用的操作系統(tǒng)平臺為Android系統(tǒng),支持開源,可以用java進行個性化軟件開發(fā)。Android系統(tǒng)主要是在原生態(tài)系統(tǒng)(原有的開源代碼)的基礎(chǔ)上進一步對其配置,修改,具有很強的靈活性。
1.2?編寫目的
該文件管理器是基于目前用戶需求分析而來,主要作用是對該文件管理器的整體結(jié)構(gòu),數(shù)據(jù)的處理流程,接口和模塊的劃分等作出詳細的描述和說明。?在系統(tǒng)詳細設(shè)計中,對整套系統(tǒng)的各個功能模塊進行詳細的設(shè)計。
1.3?開發(fā)平臺
本系統(tǒng)開發(fā)平臺是博通21552平臺,采用java語言編寫,在本系統(tǒng)中充分體現(xiàn)了java語言的簡單性,面向?qū)ο?,分布性,健壯性,結(jié)構(gòu)中立,安全性,可移植,高性能,多線程,動態(tài)性。Java語言采用面向?qū)ο蟪绦蛟O(shè)計,字節(jié)碼的設(shè)計很好的解決了安全和移植性問題。Java編譯器編譯的結(jié)果不是可執(zhí)行代碼,而是字節(jié)碼。Java虛擬機(Java?Virtual?Machine,Jvm)是一個字節(jié)碼解釋器,將Java程序解釋成字節(jié)碼會使不同環(huán)境下的程序運行都變得十分輕松。對于每個平臺而言只需要運行Java虛擬機即可。盡管不同平臺之間的Java虛擬機不盡相同,但是它們解釋出的Java字節(jié)碼卻都是一樣的。
Java的核心是面向?qū)ο蟪绦蛟O(shè)計(OOP)。OOP是一種功能強大的程序設(shè)計方法。為支持面向?qū)ο蟪绦蛟O(shè)計的原理,所有OOP語言(包括Java在內(nèi))都有三個特性:封裝(encapsulation)、多態(tài)性(polymorphism)和繼承(inheritance)。
2總體設(shè)計
2.1?需求規(guī)定
功能需求:瀏覽文件和文件夾、復(fù)制文件或文件夾、粘貼文件或文件夾、剪切文件或文件夾、刪除文件或文件夾、新建文件或文件夾、重命名文件或文件夾、搜索文件或文件夾、搜索文件或文件夾、查看文件或文件夾的屬性、分享文件、顯示可安裝文件(APK)、打開系統(tǒng)或應(yīng)用軟件支持的文件、視圖設(shè)置。
2.2?運行環(huán)境
A79是基于博通21552平臺,運行于Android2.3操作系統(tǒng)。CPU采用的是ARM1136JF-S?+?ARM926EJ-S(800MHz),手機內(nèi)存為4G?Nand?flash?+2G?DDR,最高可支持32G?SD卡擴展;顯示屏采用3.95"?HVGA?480x320?262K色,?電容式全屏觸摸屏;有雙攝像頭,主攝像頭為3M?FF,前置攝像頭0.3M?FF。支持藍牙4.0?EDR+HS,支持WIFI?802.11?b/g/n。
2.3基本設(shè)計概念和系統(tǒng)基本結(jié)構(gòu)
本設(shè)計由操作模塊、文件管理器UI(顯示模塊)、設(shè)置模塊3個模塊組成。文件管理器UI模塊包含主顯示界面、搜索結(jié)果顯示界面、APK管理界面、設(shè)置界面;設(shè)置模塊包含是否顯示隱藏文件;操作模塊包含新建、復(fù)制、粘貼、分享、打開,其中打開和分享操作將調(diào)用其他的應(yīng)用實現(xiàn)。
3模塊設(shè)計
3.1?顯示模塊
對文件管理器來說,文件的顯示及打開是最主要的操作。
3.2?操作模塊
3.2.1重命名流程
當(dāng)用戶想把文件重命名的時候,如果用戶有權(quán)限,彈出輸入框,輸入新的名字,如果存在同名文件,提示有同名文件存在,再次返回到輸入框,重新鍵入新名字,如果不是同名文件,直接替換名字,結(jié)束,如果用戶沒有權(quán)限的情況下,會直接提示權(quán)限不足,結(jié)束(比如SD卡內(nèi)存不足,就會沒有權(quán)限,一般的,是否有權(quán)限指的是系統(tǒng)內(nèi)部的)。
3.2.2?復(fù)制、剪切流程
當(dāng)用戶開始復(fù)制、剪切某一文件時,會記錄信息到剪貼板,如果有權(quán)限,記錄文件路徑,之后實現(xiàn)粘貼,如果是復(fù)制文件,就復(fù)制,如果是剪切文件就移動,結(jié)束,如果沒有權(quán)限直接提示權(quán)限不足,直接結(jié)束。
3.3設(shè)置模塊
當(dāng)用戶對文件進行設(shè)置時,點擊開始,打開文件夾,選擇文件屬性,如果點擊關(guān)于,查看文件具體信息;還可以對文件是否隱藏進行設(shè)置,如果選擇是,則顯示所有文件;如果選擇否,則直接結(jié)束。
4系統(tǒng)詳細設(shè)計和實現(xiàn)
4.1?具體設(shè)計、流程圖、主要代碼
4.1.1?重命名具體操作序列是:
1、在主界面上點擊文件管理器應(yīng)用;
2、長按要重命名的文件或文件夾;
3、在彈出的菜單中點擊重命名;
4、在編輯框中輸入新名字;
4.1.2?復(fù)制、剪切具體操作序列是:
1、在主界面上點擊文件管理器應(yīng)用;
2、長按要復(fù)制/剪切的文件或文件夾;
3、在彈出的菜單中點擊復(fù)制/剪切;
4.1.3?設(shè)置中的顯示文件屬性具體操作序列是:
1、在主界面上點擊文件管理器應(yīng)用;
2、長按要查看屬性的文件或文件夾;
3、在彈出的菜單中點屬性;
4.2?軟件測試
筆者在代碼設(shè)計之后,主要是在eclipse里面配置Android,安裝了相關(guān)驅(qū)動,ADT,安裝了模擬器,在模擬器上按照測試方案和流程對gfive文件管理器進行功能和性能測試(結(jié)合使用白盒和黑盒兩種測試方法),甚至在需要時編寫不同的測試工具,設(shè)計和維護測試系統(tǒng),對測試方案可能出現(xiàn)的問題進行分析和評估。編寫測試用例,并執(zhí)行測試用例,根據(jù)需要,跟蹤故障,進一步修改代碼,以確保文件管理器應(yīng)用適合需求。最終在GFIVE手機上生成了文件管理器,為設(shè)計的完成奠定了基礎(chǔ)。