【正文】
the utilization of mobile phones and use of quality has bee a matter of concern.This topic is: Android data provide a mechanism to run desktop programs, cumbersome maximize simplistic, uping feature integration. The simple steps at the same time, does not affect the functional requirements of the people39。然而,人們往往對(duì)下載到手機(jī)里琳瑯滿目的應(yīng)用程序感到眼花繚亂、無(wú)從下手;手機(jī)里下載的軟件幾乎都未曾使用;有時(shí)由于忘記查閱郵件導(dǎo)致某個(gè)計(jì)劃的擱淺,或者厭倦頻繁地查看手機(jī)這種不良習(xí)慣。傳統(tǒng)的操作界面早已不符合了人們對(duì)手機(jī)的定義:快捷、智能。而本課題所設(shè)計(jì)的即為:基于Android手機(jī)的個(gè)性化桌面程序,通過(guò)該程序?qū)⒎爆嵉墓δ苓x擇最大限度地簡(jiǎn)單化。通過(guò)本課題的設(shè)計(jì)也能加強(qiáng)本人對(duì)Android框架的深入了解,從而對(duì)Android技術(shù)及應(yīng)用有一個(gè)全方位、深刻的認(rèn)識(shí),為今后從事相關(guān)工作,積累寶貴的經(jīng)驗(yàn)。所要完成的程序?qū)⒛軌蜃x取用戶的要求和設(shè)置,隨時(shí)、隨地為用戶提供其所需的軟件或信息服務(wù),即將手機(jī)中絕大部分常用軟件或功能提出,置于桌面系統(tǒng)中,且提供個(gè)性化排版以滿足廣大年輕有個(gè)性的人群,滿足他(她)們對(duì)手機(jī)的觀賞性和實(shí)用性雙重要求的高標(biāo)準(zhǔn)。使用Eclipse和Android Eclipse插件開發(fā)Java項(xiàng)目,構(gòu)造合理的軟件架構(gòu),使得本系統(tǒng)的開發(fā)具有簡(jiǎn)單、高效的特點(diǎn)。而且在本次系統(tǒng)調(diào)研中充分地介入到了市場(chǎng)中,深入了解廣大群眾的想法和使用意愿,以便使該系統(tǒng)具有更廣闊的適應(yīng)性,達(dá)到“眾口可調(diào)”的預(yù)期效果。 課題研究現(xiàn)狀在國(guó)內(nèi)現(xiàn)有的安卓市場(chǎng)環(huán)境中,由于大部份面向用戶的軟件都可以免費(fèi)下載,這就導(dǎo)致了軟件的變相收費(fèi),比如:內(nèi)置廣告插件、進(jìn)程后臺(tái)跑流量、接收惡意短信等。從而不能使用戶的軟件達(dá)到最理想的使用狀態(tài),本軟件選擇Android ,是因?yàn)檩^之其它版本可以有更好的兼容性和運(yùn)行效果,且限制模式可以幫助開發(fā)者監(jiān)控他的應(yīng)用的性能,處理線程阻塞,避免ANR(Application Not Responding,應(yīng)用程序無(wú)響應(yīng))的發(fā)生。最重要的是本軟件純綠色不含任何插件,用戶可以獲得最高權(quán)限,保證徹底了解、掌握本軟件以達(dá)到合理的運(yùn)用。 論文結(jié)構(gòu)本論文設(shè)計(jì)的內(nèi)容是基于Android手機(jī)的個(gè)性化桌面程序。第二章的關(guān)鍵技術(shù)闡述了本課題的難點(diǎn)和攻堅(jiān)處,也是研究課題的第一步。第四章到第六章則是從對(duì)系統(tǒng)的設(shè)計(jì)到實(shí)現(xiàn)再到最終完成測(cè)試,也是本項(xiàng)目的核心內(nèi)容。 25大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第2章 關(guān)鍵技術(shù)介紹本設(shè)計(jì)所使用的關(guān)鍵技術(shù)有基于Android語(yǔ)言的Java算法、Java與數(shù)據(jù)庫(kù)的連接及天氣預(yù)報(bào)API接口技術(shù)。 Android技術(shù)簡(jiǎn)介Android是Google開發(fā)的基于Linux平臺(tái)的開源手機(jī)操作系統(tǒng)。Android分為四個(gè)層,從高層到底層分別是應(yīng)用程序?qū)印?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和linux核心層。本程序中與SQLite數(shù)據(jù)庫(kù)的連接訪問(wèn)步驟:加載(注冊(cè))數(shù)據(jù)庫(kù)→建立連接→執(zhí)行SQL語(yǔ)句→處理結(jié)果集→關(guān)閉連接。 安卓相關(guān)API技術(shù)API(Application Programming Interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件的以訪問(wèn)一組例程的能力,而又無(wú)需訪問(wèn)源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。以下是天氣數(shù)據(jù)的格式和解析方法的說(shuō)明。② XML數(shù)據(jù):XML(Extensible Markup Language,可擴(kuò)展標(biāo)記語(yǔ)言)比較JSON,XML數(shù)據(jù)冗余多、解析慢。② XML的解析方式主要有兩種:一是通過(guò)DOM文檔模型解析,分析該結(jié)構(gòu)必須需要提前知道整個(gè)文檔和層次結(jié)構(gòu),然后有下一步的操作。這個(gè)是一個(gè)開源XML,解析出來(lái)的數(shù)據(jù)形式各異。第3章 系統(tǒng)需求分析 系統(tǒng)設(shè)計(jì)目標(biāo)本系統(tǒng)通過(guò)基于Android手機(jī)的個(gè)性化手機(jī)桌面程序來(lái)實(shí)現(xiàn)對(duì)用戶手機(jī)程序的便捷管理。 系統(tǒng)功能需求根據(jù)需求調(diào)研結(jié)果確定本系統(tǒng)主要包括以下功能模塊。按照自身要求選擇即可。當(dāng)用戶點(diǎn)擊“設(shè)置壁紙”UI后跳轉(zhuǎn)設(shè)置界面,系統(tǒng)提供多張圖片,在屏幕下方可左右滑動(dòng)進(jìn)行選擇,選中后點(diǎn)擊屏幕下方對(duì)應(yīng)的圖片,按照提示選擇是否更換壁紙。當(dāng)選擇“刷新天氣”時(shí),將發(fā)送信息至總端,待接收后更新天氣信息。(3)郵件發(fā)送:用戶打開“發(fā)送郵件”UI,彈出登錄賬號(hào)界面,待輸入登錄后跳轉(zhuǎn)至發(fā)送用郵件界面,依次填寫收件人名稱、郵件主題、郵件內(nèi)容點(diǎn)擊發(fā)送,輕松完成。 天氣預(yù)報(bào)API接口及其它業(yè)務(wù)功能功能編號(hào)功能名稱功能描述1鈴聲設(shè)置任意更改鈴聲2壁紙?jiān)O(shè)置任意更改鈴聲3郵件查看直接查看手機(jī)郵件4天氣預(yù)報(bào)查看提供城市天氣情況5天氣預(yù)報(bào)API接口可向開源網(wǎng)站收發(fā)天氣信息 系統(tǒng)非功能需求(1)性能① 數(shù)據(jù)精確性和系統(tǒng)運(yùn)行保證使得天氣數(shù)據(jù)的查詢達(dá)到100%的準(zhǔn)確,數(shù)據(jù)返回解碼后一一匹配數(shù)據(jù)庫(kù)中的內(nèi)容,準(zhǔn)確無(wú)誤地顯示出來(lái)。② 人機(jī)交互通過(guò)點(diǎn)擊屏幕實(shí)現(xiàn)對(duì)程序的查看,功能的系統(tǒng)程序界面簡(jiǎn)潔明了,在幾處關(guān)鍵的操作響應(yīng)中都有對(duì)應(yīng)的提示。故成本低廉。在原有的基礎(chǔ)上再加入對(duì)數(shù)據(jù)庫(kù)SQLite的使用,使得程序內(nèi)容更加豐富。 經(jīng)濟(jì)可行性在開發(fā)的時(shí)候只需要適當(dāng)?shù)娜肆ξ锪涂梢酝瓿?,不浪費(fèi)不必要的資源。大連東軟信息學(xué)院畢業(yè)設(shè)計(jì)(論文)第4章 系統(tǒng)設(shè)計(jì) 體系結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)采用軟件工程開發(fā)的主流的三層架構(gòu)。UI 層:人機(jī)交互,它接收用戶的操作,從底層接收到消息逐層上傳顯示給用戶。數(shù)據(jù)訪問(wèn)層:進(jìn)行數(shù)據(jù)或者文件的訪問(wèn),打開、保存、存取數(shù)據(jù)庫(kù)文件等操作。Java與數(shù)據(jù)庫(kù):通過(guò)建立的數(shù)據(jù)庫(kù)存放與天氣相關(guān)的信息,當(dāng)接到用戶讀取指令時(shí)能夠與數(shù)據(jù)庫(kù)鏈接,將包含的信息呈現(xiàn)給用戶。 系統(tǒng)體系結(jié)構(gòu) 數(shù)據(jù)庫(kù)API本系統(tǒng)中使用數(shù)據(jù)庫(kù)來(lái)完成對(duì)天氣等一些信息的存放,利用Java語(yǔ)言鏈接數(shù)據(jù)庫(kù),以及操作數(shù)據(jù)庫(kù)中的數(shù)據(jù)。 JDBC主要的接口及作用接口作用數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的加載,以及與數(shù)據(jù)庫(kù)連接的建立建立與特定數(shù)據(jù)庫(kù)的鏈接向已經(jīng)建立連接的數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句,并對(duì)其進(jìn)行處理返回在數(shù)據(jù)庫(kù)中執(zhí)行SQL的結(jié)果通過(guò)開源API,輸入數(shù)據(jù)庫(kù)中建立的數(shù)據(jù)表中存放城市的地址編號(hào),將對(duì)應(yīng)的城市代碼編號(hào),映射到中國(guó)天氣網(wǎng),從而得到預(yù)報(bào)信息。 數(shù)據(jù)表的建立名稱數(shù)據(jù)類型文件說(shuō)明示例CityIDInteger PK主鍵首值1ProvinceIDInteger PK主鍵首值10CityNumText存放市及市以下城市名稱編號(hào)101010100ProvinceNameText顯示省及直轄市名稱北京CityNameText顯示市及市以下城市名稱北京朝陽(yáng)區(qū) 軟件設(shè)計(jì) 控制流程設(shè)計(jì)點(diǎn)擊系統(tǒng)進(jìn)行初始化,進(jìn)入U(xiǎn)I界面,可分別點(diǎn)擊模塊。按下菜單鍵出現(xiàn)功能欄,可根據(jù)用戶要求自選。設(shè)置好后可推出進(jìn)入鈴聲設(shè)置,點(diǎn)擊進(jìn)入后,導(dǎo)入內(nèi)存中的音樂(lè),選擇一首按照程序提示進(jìn)行更換。程序主流程圖如 : 系統(tǒng)主流程圖 UI界面設(shè)計(jì)程序主界面:提供四個(gè)按鍵欄,分別進(jìn)入相應(yīng)的功能。四個(gè)按鍵分別是Button類的btnWeather、btnSendEmail、btnWallPaperSetting和 btnRingtone。屬性包括:EditText類的 txtEmailAddress、EditText類的txtPWD、Button類的 btnOK和Spinner 類的TypeSpinner共同完成郵件的登陸。 發(fā)送郵件界面壁紙UI設(shè)計(jì)提供多種壁紙,可供用戶瀏覽、選擇更換。屬性包括ImageSwitcher和Context,其中ImageSwitcher是將圖片加載到手機(jī)瀏覽界面上,: 壁紙更換界面天氣預(yù)報(bào)UI設(shè)計(jì),類WeatherWidget繼承于AppWidgetProvider,屬性有g(shù)etWeatherView實(shí)現(xiàn)對(duì)天氣更新后窗口的刷新。系統(tǒng)包含壁紙?jiān)O(shè)置、鈴聲設(shè)置、天氣查詢和郵件發(fā)送共計(jì)四個(gè)模塊,而其中又細(xì)分為壁紙瀏覽、壁紙?jiān)O(shè)置、導(dǎo)入鈴聲、試聽導(dǎo)入的鈴聲、設(shè)置手機(jī)來(lái)電鈴聲、設(shè)置手機(jī)提示音、設(shè)置手機(jī)鬧鈴、同步天氣信息、用戶登錄和郵件發(fā)送等多個(gè)子模塊。收到數(shù)據(jù)為Json(JavaScript Object Notation,輕量級(jí)數(shù)據(jù)交換格式),對(duì)其進(jìn)行解碼,將數(shù)據(jù)庫(kù)中已經(jīng)保存的天氣圖片與溫度進(jìn)行映射。(2) 壁紙?jiān)O(shè)置模塊壁紙?jiān)O(shè)置方法有多種,本系統(tǒng)采用的是ContextWrapper 類中提供的setWallpaper()方法。該方法能夠根據(jù)編號(hào)切換壁紙。壁紙?jiān)O(shè)置功能可以設(shè)置多個(gè)點(diǎn)擊響應(yīng)和單擊圖片的發(fā)生事件,包含彈出窗口信息、確認(rèn)窗口、更換桌面并在setWallpaper()方法中完成更換。其工作原理是將用戶手機(jī)中選中音樂(lè)的絕對(duì)路徑uri查到,以便檢測(cè)歌曲是否存在,(uri,id),將uri和id拼接成一個(gè)新的uri,將其設(shè)置成想要的鈴聲即可。試聽鈴聲資源是指當(dāng)選中的文件存放在數(shù)據(jù)庫(kù)中時(shí),用戶可以點(diǎn)擊某一首試聽,在RingtonePro類封裝的public