基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩35頁(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、xxx大學(xué)畢業(yè)論文(設(shè)計(jì))本 科 生 畢 業(yè) 論 文題目名稱 基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn) 學(xué)生姓名 學(xué)號(hào) 系(部) 專業(yè)年級(jí) 指導(dǎo)教師 填寫(xiě)時(shí)間 I基于Android的公交與美食設(shè)計(jì)與實(shí)現(xiàn)摘要:現(xiàn)如今,隨著智能移動(dòng)終端與移動(dòng)互聯(lián)網(wǎng)的發(fā)展,基于Google Android開(kāi)源平臺(tái)的智能終端設(shè)備在世界范圍內(nèi)廣泛普及。與此同時(shí),基于Android的手機(jī)應(yīng)用市場(chǎng)也得到了很大的發(fā)展,各種各樣的手機(jī)應(yīng)用層出不窮。其中,地圖類應(yīng)用由于其使用范圍廣和便捷性的特點(diǎn),占據(jù)了較大的市場(chǎng)空間。本課題在此背景下,研究開(kāi)發(fā)了一個(gè)基于Android的公交與美食搜索應(yīng)用軟件。本軟件使用Eclipse與Andro

2、id SDK作為開(kāi)發(fā)工具,采用SQLite數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)服務(wù)支持,利用目前比較流行的百度地圖SDK作為地圖平臺(tái)接口。最終完成的公交與美食搜索應(yīng)用可讓用戶在手機(jī)上進(jìn)行全國(guó)城市公交查詢、周邊美食搜索、美食評(píng)分與美食導(dǎo)航等操作。關(guān)鍵詞:公交查詢;美食搜索;美食評(píng)分;Android;百度地圖The Design and Implementation of Bus and Food Base on AndroidAbstract:Nowadays, with the development of mobile Internet and intelligent mobile terminal, ba

3、sed on the Google Android open-source platform of intelligent mobile terminal equipment widely spread throughout the world. At the same time, mobile application which based on Android mobile terminal market also got great development, all kinds of mobile phone applications are always around us. Amon

4、g them, map applications occupy a larger market space because of its wide use and convenience features. In this context, which had developed a bus and food search application software based on Android mobile terminal.The application software uses Eclipse and Android SDK as the development tool, usin

5、g the SQLite embedded database as the backend data service support, using the baidu map SDK as the the map platform interface. The finished bus and food search application software for users to query the city bus, to search for food around, food navigation, food score and other operations.Key words:

6、Bus Query;Food Search;Food Score;Android;Baidu Map目 錄 TOC o 1-3 h z u HYPERLINK l _Toc419493405 摘要 PAGEREF _Toc419493405 h 1 HYPERLINK l _Toc419493406 Abstract PAGEREF _Toc419493406 h 2 HYPERLINK l _Toc419493407 第一章 系統(tǒng)概述 PAGEREF _Toc419493407 h 5 HYPERLINK l _Toc419493408 1.1 開(kāi)發(fā)背景和意義 PAGEREF _Toc419

7、493408 h 5 HYPERLINK l _Toc419493409 1.1.1 開(kāi)發(fā)背景 PAGEREF _Toc419493409 h 5 HYPERLINK l _Toc419493410 1.1.2 開(kāi)發(fā)意義 PAGEREF _Toc419493410 h 5 HYPERLINK l _Toc419493411 1.2 系統(tǒng)設(shè)計(jì)目標(biāo) PAGEREF _Toc419493411 h 6 HYPERLINK l _Toc419493412 1.2.1 系統(tǒng)實(shí)現(xiàn)目標(biāo) PAGEREF _Toc419493412 h 6 HYPERLINK l _Toc419493413 1.2.2 系統(tǒng)設(shè)

8、計(jì)模型 PAGEREF _Toc419493413 h 6 HYPERLINK l _Toc419493414 1.3 研究?jī)?nèi)容 PAGEREF _Toc419493414 h 7 HYPERLINK l _Toc419493415 第二章 開(kāi)發(fā)工具及其環(huán)境 PAGEREF _Toc419493415 h 8 HYPERLINK l _Toc419493416 2.1 Android開(kāi)發(fā)技術(shù) PAGEREF _Toc419493416 h 8 HYPERLINK l _Toc419493417 2.2 Eclipse開(kāi)發(fā)工具 PAGEREF _Toc419493417 h 9 HYPERLIN

9、K l _Toc419493418 2.3 Android SDK PAGEREF _Toc419493418 h 9 HYPERLINK l _Toc419493419 2.4 SQLite數(shù)據(jù)庫(kù) PAGEREF _Toc419493419 h 9 HYPERLINK l _Toc419493420 2.5 MVC開(kāi)發(fā)模式 PAGEREF _Toc419493420 h 10 HYPERLINK l _Toc419493421 第三章 系統(tǒng)分析 PAGEREF _Toc419493421 h 11 HYPERLINK l _Toc419493422 3.1 可行性分析 PAGEREF _To

10、c419493422 h 11 HYPERLINK l _Toc419493423 3.1.1技術(shù)可行性 PAGEREF _Toc419493423 h 11 HYPERLINK l _Toc419493424 3.1.2經(jīng)濟(jì)可行性 PAGEREF _Toc419493424 h 11 HYPERLINK l _Toc419493425 3.1.3操作可行性 PAGEREF _Toc419493425 h 11 HYPERLINK l _Toc419493426 3.1.4硬件可行性 PAGEREF _Toc419493426 h 11 HYPERLINK l _Toc419493427 3.

11、2 功能需求分析 PAGEREF _Toc419493427 h 12 HYPERLINK l _Toc419493428 3.2.1 功能需求分析 PAGEREF _Toc419493428 h 12 HYPERLINK l _Toc419493429 3.2.2 性能需求分析 PAGEREF _Toc419493429 h 13 HYPERLINK l _Toc419493430 第四章 系統(tǒng)設(shè)計(jì) PAGEREF _Toc419493430 h 15 HYPERLINK l _Toc419493431 4.1 系統(tǒng)概要設(shè)計(jì) PAGEREF _Toc419493431 h 15 HYPERL

12、INK l _Toc419493432 4.1.1 概要設(shè)計(jì)的基本步驟 PAGEREF _Toc419493432 h 15 HYPERLINK l _Toc419493433 4.1.2 功能劃分組織結(jié)構(gòu)圖 PAGEREF _Toc419493433 h 15 HYPERLINK l _Toc419493434 4.1.3 用例分析 PAGEREF _Toc419493434 h 16 HYPERLINK l _Toc419493435 4.2 系統(tǒng)流程圖設(shè)計(jì) PAGEREF _Toc419493435 h 18 HYPERLINK l _Toc419493436 4.2.1 公交查詢中全國(guó)

13、城市公交線路查詢流程圖 PAGEREF _Toc419493436 h 18 HYPERLINK l _Toc419493437 4.2.2 美食評(píng)分中添加美食評(píng)分流程圖 PAGEREF _Toc419493437 h 19 HYPERLINK l _Toc419493438 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì) PAGEREF _Toc419493438 h 19 HYPERLINK l _Toc419493439 4.3.1 E-R圖設(shè)計(jì) PAGEREF _Toc419493439 h 19 HYPERLINK l _Toc419493440 4.3.2 數(shù)據(jù)庫(kù)表設(shè)計(jì) PAGEREF _Toc4194934

14、40 h 20 HYPERLINK l _Toc419493441 4.4 頁(yè)面風(fēng)格設(shè)計(jì) PAGEREF _Toc419493441 h 21 HYPERLINK l _Toc419493442 4.4.1 主體風(fēng)格設(shè)計(jì) PAGEREF _Toc419493442 h 21 HYPERLINK l _Toc419493443 4.4.2 應(yīng)用程序Logo設(shè)計(jì) PAGEREF _Toc419493443 h 22 HYPERLINK l _Toc419493444 4.5 系統(tǒng)包結(jié)構(gòu) PAGEREF _Toc419493444 h 22 HYPERLINK l _Toc419493445 4.6

15、 百度地圖SDK PAGEREF _Toc419493445 h 23 HYPERLINK l _Toc419493446 4.7 AndroidManifest.xml文件配置 PAGEREF _Toc419493446 h 24 HYPERLINK l _Toc419493447 第五章 系統(tǒng)主要模塊的功能與實(shí)現(xiàn) PAGEREF _Toc419493447 h 25 HYPERLINK l _Toc419493448 5.1 歡迎頁(yè)面實(shí)現(xiàn) PAGEREF _Toc419493448 h 25 HYPERLINK l _Toc419493449 5.2 公交查詢實(shí)現(xiàn) PAGEREF _Toc

16、419493449 h 26 HYPERLINK l _Toc419493450 5.2.1 公交查詢 PAGEREF _Toc419493450 h 26 HYPERLINK l _Toc419493451 5.2.2 點(diǎn)擊報(bào)站 PAGEREF _Toc419493451 h 27 HYPERLINK l _Toc419493452 5.3 美食搜索實(shí)現(xiàn) PAGEREF _Toc419493452 h 28 HYPERLINK l _Toc419493453 5.3.1 快餐/美食搜索 PAGEREF _Toc419493453 h 28 HYPERLINK l _Toc419493454

17、5.3.2 美食詳情 PAGEREF _Toc419493454 h 29 HYPERLINK l _Toc419493455 5.3.3 美食導(dǎo)航 PAGEREF _Toc419493455 h 30 HYPERLINK l _Toc419493456 5.3.4 添加評(píng)分 PAGEREF _Toc419493456 h 30 HYPERLINK l _Toc419493457 5.3.5 切換地圖模式 PAGEREF _Toc419493457 h 31 HYPERLINK l _Toc419493458 5.3.6 重置搜索 PAGEREF _Toc419493458 h 31 HYPE

18、RLINK l _Toc419493459 5.4 美食評(píng)分實(shí)現(xiàn) PAGEREF _Toc419493459 h 31 HYPERLINK l _Toc419493460 5.4.1 美食評(píng)分列表 PAGEREF _Toc419493460 h 31 HYPERLINK l _Toc419493461 5.4.2 新建評(píng)分 PAGEREF _Toc419493461 h 32 HYPERLINK l _Toc419493462 5.4.3 刪除評(píng)分 PAGEREF _Toc419493462 h 32 HYPERLINK l _Toc419493463 5.5 網(wǎng)上沖浪實(shí)現(xiàn) PAGEREF _

19、Toc419493463 h 32 HYPERLINK l _Toc419493464 5.6 使用幫助實(shí)現(xiàn) PAGEREF _Toc419493464 h 32 HYPERLINK l _Toc419493465 5.7 關(guān)于系統(tǒng)實(shí)現(xiàn) PAGEREF _Toc419493465 h 33 HYPERLINK l _Toc419493466 5.8 系統(tǒng)退出實(shí)現(xiàn) PAGEREF _Toc419493466 h 33 HYPERLINK l _Toc419493467 第六章 總結(jié) PAGEREF _Toc419493467 h 34 HYPERLINK l _Toc419493468 參考文獻(xiàn)

20、 PAGEREF _Toc419493468 h 35 HYPERLINK l _Toc419493469 致謝 PAGEREF _Toc419493469 h 36第一章 系統(tǒng)概述1.1 開(kāi)發(fā)背景和意義隨著社會(huì)的發(fā)展,智能移動(dòng)設(shè)備已經(jīng)進(jìn)入到了人們的日常生活當(dāng)中,人們的生活、學(xué)習(xí)和工作越來(lái)越依賴于移動(dòng)技術(shù)的發(fā)展。移動(dòng)技術(shù)的發(fā)展歷程以及目前的應(yīng)用狀況和發(fā)展趨勢(shì),可以充分地相信這項(xiàng)技術(shù)將極大的改變我們的學(xué)習(xí)、生活與工作方式。1.1.1 開(kāi)發(fā)背景當(dāng)今社會(huì),移動(dòng)互聯(lián)網(wǎng)的發(fā)展與人們的生活息息相關(guān),人們的日常生活也越來(lái)越離不開(kāi)智能移動(dòng)終端。其中,地圖類應(yīng)用由于其使用范圍廣和便捷性的特點(diǎn),占據(jù)著較大的市場(chǎng)空

21、間。然而現(xiàn)行的一些手機(jī)地圖類應(yīng)用軟件的目標(biāo)定位并不明確,導(dǎo)致應(yīng)用軟件的功能過(guò)于臃腫,并不被廣大用戶接納和喜愛(ài)。本課題針對(duì)目前市場(chǎng)上手機(jī)地圖類應(yīng)用良莠不齊的狀況,并結(jié)合對(duì)經(jīng)常出行并且使用地圖類應(yīng)用的用戶進(jìn)行的需求調(diào)查分析,開(kāi)發(fā)出了這款基于Android的公交與美食搜索軟件,最終實(shí)現(xiàn)了一款交互友好、主題明確、方便用戶使用的公交與美食搜索軟件,可以讓?xiě)粼谑謾C(jī)上自行進(jìn)行全國(guó)城市公交查詢、周邊美食搜索、美食導(dǎo)航與美食評(píng)分等操作,應(yīng)用軟件可高效運(yùn)行,增加了用戶的使用便捷性,方便了用戶的出行與生活。1.1.2 開(kāi)發(fā)意義基于Android的公交與美食搜索應(yīng)用支持當(dāng)下主流的各式各樣的Android系統(tǒng)手機(jī)、平板

22、等移動(dòng)終端設(shè)備,給用戶提供了一種全新的公交查詢與美食搜索體驗(yàn)。該應(yīng)用程序的成功開(kāi)發(fā)具有以下意義:(1)集合了移動(dòng)終端與移動(dòng)互聯(lián)網(wǎng)的優(yōu)勢(shì)互補(bǔ),代替了傳統(tǒng)的公交查詢方式,為用戶提供了一種全新的交互體驗(yàn);(2)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件利用Android手機(jī)即可進(jìn)行公交查詢與美食搜索操作,不需要定制專用設(shè)備,具有較好的普及性;(3)具有零技術(shù)、零成本、零投入、的特點(diǎn),用戶不需要有任何基礎(chǔ),即可使用該應(yīng)用軟件;(4)應(yīng)用程序采用各個(gè)功能模塊相互獨(dú)立的結(jié)構(gòu),具有很好的使用健壯性,對(duì)于美食評(píng)分中各項(xiàng)數(shù)據(jù)的存儲(chǔ)較為準(zhǔn)確,及時(shí);操作簡(jiǎn)單、方便攜帶、交互友好是基于Android的公交與美

23、食搜索應(yīng)用軟件的最大特點(diǎn)。它是時(shí)代進(jìn)步和科技創(chuàng)新相結(jié)合的產(chǎn)物,各項(xiàng)功能符合用戶需求,是一款全新的公交與美食搜索應(yīng)用軟件。1.2 系統(tǒng)設(shè)計(jì)目標(biāo)1.2.1 系統(tǒng)實(shí)現(xiàn)目標(biāo)隨著Android移動(dòng)終端的普及,鋪天蓋地的手機(jī)應(yīng)用與游戲充斥在我們身邊。其中,地圖類應(yīng)用由于其使用范圍廣和便捷性的特點(diǎn),有著較大的使用用戶群體和較大的市場(chǎng)發(fā)展空間;但市面上現(xiàn)行的一些地圖類應(yīng)用盲目追求功能的龐大,導(dǎo)致了很差的用戶體驗(yàn)。針對(duì)上述課題背景,開(kāi)發(fā)一款基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件是勢(shì)在必行的?;贏ndroid移動(dòng)終端的公交與美食搜索應(yīng)用軟件使用Eclipse與Android SDK作為開(kāi)發(fā)工具,采用

24、SQLite嵌入式數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)服務(wù)支持,利用國(guó)內(nèi)比較流行的百度地圖SDK作為地圖平臺(tái)接口,實(shí)現(xiàn)了全國(guó)各大城市的公交線路查詢、手機(jī)定位自己、更改地圖模式、周邊美食定位、美食評(píng)分、網(wǎng)上沖浪、使用幫助、關(guān)于系統(tǒng)等功能,最終實(shí)現(xiàn)了這款基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件。并且命名為公交與美食。最終完成的公交與美食應(yīng)用軟件交互友好、主題明確、方便用戶攜帶和使用,增加了用戶的使用便捷性,方便了用戶的出行與生活。1.2.2 系統(tǒng)設(shè)計(jì)模型基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件針對(duì)國(guó)內(nèi)比較流行的百度地圖SDK提供的應(yīng)用程序接口進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)公交查詢、導(dǎo)航等功能。同時(shí)在應(yīng)用軟

25、件實(shí)現(xiàn)中配合使用SQLite嵌入式數(shù)據(jù)庫(kù),實(shí)現(xiàn)了應(yīng)用軟件中美食評(píng)分各項(xiàng)數(shù)據(jù)的存儲(chǔ)與交互,使應(yīng)用軟件具有較好的健壯性。系統(tǒng)設(shè)計(jì)模型如圖1-1所示:圖1-1 系統(tǒng)設(shè)計(jì)模型圖1.3 研究?jī)?nèi)容基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的開(kāi)發(fā)歷經(jīng)了三個(gè)月的時(shí)間,先后經(jīng)過(guò)了需求調(diào)研、可行性分析、系統(tǒng)概要設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、移動(dòng)終端設(shè)計(jì)與實(shí)現(xiàn)、系統(tǒng)性能測(cè)試與分析等五個(gè)階段。期間的工作主要分為以下幾項(xiàng):1.查閱了相關(guān)書(shū)籍及資料,深入了解Java語(yǔ)法、Android開(kāi)發(fā)技術(shù)、Eclipse與Android SDK開(kāi)發(fā)工具、SQLite數(shù)據(jù)庫(kù)以及百度地圖SDK應(yīng)用程序接口二次開(kāi)發(fā)等技術(shù)。為開(kāi)發(fā)該手機(jī)應(yīng)用軟件

26、做了技術(shù)性的準(zhǔn)備。2.對(duì)市面上現(xiàn)有的手機(jī)地圖類應(yīng)用軟件做了調(diào)研與分析,經(jīng)過(guò)對(duì)應(yīng)用軟件的可行性分析和需求分之后,在概要設(shè)計(jì)階段,設(shè)計(jì)出了基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的體系架構(gòu)。3.根據(jù)前面對(duì)手機(jī)應(yīng)用軟件的分析和體系結(jié)構(gòu)設(shè)計(jì),以及對(duì)開(kāi)發(fā)技術(shù)和工具的研究完成初期準(zhǔn)備,進(jìn)行了移動(dòng)終端的頁(yè)面設(shè)計(jì)及一部分功能代碼的編寫(xiě)。 4.學(xué)習(xí)了百度地圖SDK應(yīng)用程序接口二次開(kāi)發(fā)技術(shù)以及對(duì)應(yīng)用軟件中一些背景布局、圖片等文件進(jìn)行拉伸處理,以自適應(yīng)不同類型的Android系統(tǒng)移動(dòng)終端設(shè)備。5.中期進(jìn)行了業(yè)務(wù)功能的修改和完善,并完成了項(xiàng)目的測(cè)試。對(duì)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的各個(gè)

27、功能模塊進(jìn)行介紹,并以截圖的方式,展現(xiàn)給用戶,以用戶能很好的了解和使用該應(yīng)用程序;6.最后根據(jù)所做系統(tǒng)及過(guò)程中收集的資料,完成畢業(yè)論文。第二章 開(kāi)發(fā)工具及其環(huán)境2.1 Android開(kāi)發(fā)技術(shù)Android是一種基于Linux的自由且開(kāi)放源代碼的操作系統(tǒng),主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦等,由Google公司和開(kāi)放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開(kāi)發(fā)。隨著移動(dòng)互聯(lián)網(wǎng)與智能移動(dòng)終端的迅速發(fā)展,直至2013年10月全世界采用這款系統(tǒng)的設(shè)備數(shù)量已經(jīng)達(dá)到10億臺(tái)。Android的系統(tǒng)架構(gòu)如圖2-1所示:圖2-1 Android系統(tǒng)架構(gòu)圖從上述架構(gòu)圖中看,Android系統(tǒng)分為四個(gè)層,從高層到低層分別是應(yīng)用程序?qū)印?/p>

28、應(yīng)用框架層、系統(tǒng)運(yùn)行庫(kù)層和Linux內(nèi)核層。1.應(yīng)用程序?qū)覣ndroid會(huì)同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括客戶端、SMS短消息程序、日歷、地圖、瀏覽器、聯(lián)系人管理程序等一些基本程序。所有的應(yīng)用程序都是使用Java語(yǔ)言編寫(xiě)的。2.應(yīng)用框架層開(kāi)發(fā)人員也可以完全訪問(wèn)核心應(yīng)用程序所使用的API框架。該應(yīng)用程序的架構(gòu)設(shè)計(jì)簡(jiǎn)化了組件的重用;任何一個(gè)應(yīng)用程序都可以發(fā)布它的功能塊,并且任何其它的應(yīng)用程序都可以使用其所發(fā)布的功能塊,但需要遵循框架的安全性。同樣,該應(yīng)用程序重用機(jī)制也使用戶可以方便的替換程序組件。3.系統(tǒng)運(yùn)行庫(kù)層系統(tǒng)運(yùn)行庫(kù)層包括程序庫(kù)和Android運(yùn)行庫(kù)。程序庫(kù)包含一些C/C+庫(kù)

29、,這些庫(kù)能被Android系統(tǒng)中不同的組件所使用。它們通過(guò) Android 應(yīng)用程序框架為開(kāi)發(fā)者提供服務(wù);Android運(yùn)行庫(kù)包括了一個(gè)核心庫(kù),該核心庫(kù)提供了Java編程語(yǔ)言核心庫(kù)的大多數(shù)功能。4.Linux內(nèi)核層Android 的核心系統(tǒng)服務(wù)依賴于 Linux 2.6 內(nèi)核,包括了如安全性、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)協(xié)議棧和驅(qū)動(dòng)模型。Linux 內(nèi)核也同時(shí)作為硬件和軟件棧之間的抽象層,為它們之間的傳遞服務(wù)。2.2 Eclipse開(kāi)發(fā)工具Eclipse是一款非常優(yōu)秀的開(kāi)源集成開(kāi)發(fā)環(huán)境,基于Java的可擴(kuò)展開(kāi)發(fā)平臺(tái),簡(jiǎn)稱IDE。除了可以作為Java的集成開(kāi)發(fā)環(huán)境外,它還可以作為編寫(xiě)其他語(yǔ)言的集成開(kāi)

30、發(fā)環(huán)境(如C+和Ruby)。Eclipse憑借其靈活的擴(kuò)展能力、優(yōu)良的性能與插件技術(shù),受到了越來(lái)越多開(kāi)發(fā)者的喜愛(ài)。2.3 Android SDKSDK是指軟件開(kāi)發(fā)工具包,它的全拼是Software Development Kit。它被軟件開(kāi)發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、操作系統(tǒng)等建立應(yīng)用軟件的開(kāi)發(fā)工具的集合8。顧名思義,Android SDK就是指Android專屬的軟件開(kāi)發(fā)工具包。這個(gè)工具包不僅包括了Android模擬器和用于Eclipse的Android開(kāi)發(fā)工具插件(簡(jiǎn)稱ADT),而且包括了各種各樣的用來(lái)調(diào)試、打包和在模擬器(Emulator)上安裝應(yīng)用的工具。與此同時(shí),

31、Android SDK同樣向開(kāi)發(fā)者們提供了AVD虛擬模擬器來(lái)模擬安卓移動(dòng)設(shè)備,同時(shí)開(kāi)發(fā)者可以根據(jù)自身的開(kāi)發(fā)需要,選擇合適的目標(biāo)平臺(tái)并建立模擬器進(jìn)行運(yùn)行和測(cè)試活動(dòng)。開(kāi)發(fā)者也可以通過(guò)真正的Android移動(dòng)終端設(shè)備進(jìn)行應(yīng)用程序的調(diào)試與運(yùn)行。2.4 SQLite數(shù)據(jù)庫(kù)Android系統(tǒng)提供了多種數(shù)據(jù)存儲(chǔ)方式,有SQLite數(shù)據(jù)庫(kù)存儲(chǔ)方式、文件存儲(chǔ)方式、XML文件的SharedPreference存儲(chǔ)方式等。本系統(tǒng)采用的是SQLite數(shù)據(jù)庫(kù)存儲(chǔ)方式,所以對(duì)其他的存儲(chǔ)方式不展開(kāi)說(shuō)明。SQLite數(shù)據(jù)庫(kù)是一個(gè)關(guān)系型數(shù)據(jù)庫(kù),因?yàn)樗苄。姹旧碇挥幸粋€(gè)大小不到300k的文件,所以常作為嵌入式數(shù)據(jù)庫(kù)內(nèi)嵌在應(yīng)用

32、程序中。SQLite是用C語(yǔ)言開(kāi)發(fā)的,開(kāi)放源代碼,支持跨平臺(tái),最大支持2048GB數(shù)據(jù),并且被所有主流編程語(yǔ)言支持??梢哉f(shuō),SQLite是一個(gè)非常優(yōu)秀的嵌入式數(shù)據(jù)庫(kù)。2.5 MVC開(kāi)發(fā)模式MVC的全拼是Model View Controller,是模型(Model)視圖(View)控制器(Controller)的縮寫(xiě),是一種軟件設(shè)計(jì)典范。不論是從開(kāi)發(fā)者或者從用戶的角度出發(fā),他們可以根據(jù)自身或者客戶的需求,選擇合適的瀏覽數(shù)據(jù)的方式。在Android應(yīng)用程序開(kāi)發(fā)中,界面設(shè)計(jì)人員與功能實(shí)現(xiàn)編碼人員可以實(shí)現(xiàn)真正的分離操作,不需要在設(shè)計(jì)基本完成后才開(kāi)始開(kāi)發(fā)功能程序。因?yàn)椋贏ndroid應(yīng)用程序開(kāi)發(fā)中,

33、界面設(shè)計(jì)是通過(guò)XML文件來(lái)實(shí)現(xiàn),而應(yīng)用程序的具體功能實(shí)現(xiàn)則是通過(guò)java類代買實(shí)現(xiàn)的,采用這樣的分離模式,使得Android應(yīng)用程序的開(kāi)發(fā)效率更高。正是這樣的MVC模式,才使得Android應(yīng)用程序開(kāi)發(fā)中工作分工更加明確。Android開(kāi)發(fā)中的界面部分也采用了當(dāng)前比較流行的MVC架構(gòu)模式。Android應(yīng)用程序的界面直接采用XML文件保存,使得界面開(kāi)發(fā)變的很方便。在Android中控制器也是很簡(jiǎn)單的,一個(gè)Activity可以擁有多個(gè)界面,只需要將視圖的ID傳遞到setContentView(),就可以指定視圖模型所要顯示的數(shù)據(jù)。同樣在Android SDK中的數(shù)據(jù)綁定,也都是采用了與MVC框架

34、類似的方法來(lái)顯示數(shù)據(jù)。在控制層上將數(shù)據(jù)按照視圖模型的要求封裝,就可以直接在視圖模型上顯示,從而實(shí)現(xiàn)了數(shù)據(jù)綁定。比如顯示游標(biāo)(Cursor)中所有數(shù)據(jù)的ListActivity,其視圖層就是一個(gè)列表視圖(ListView),將數(shù)據(jù)封裝為列表適配器(ListAdapter),并傳遞給ListView,數(shù)據(jù)就可以在ListView中顯示。第三章 系統(tǒng)分析系統(tǒng)分析的主要工作是對(duì)整個(gè)系統(tǒng)的功能與業(yè)務(wù)邏輯全過(guò)程的角度進(jìn)行分析。本文從基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的可行性分析、功能需求分析、性能分析等三個(gè)方面展開(kāi)說(shuō)明。3.1 可行性分析3.1.1技術(shù)可行性基于Android移動(dòng)終端的公交

35、與美食搜索應(yīng)用軟件的開(kāi)發(fā)采用成熟的Android開(kāi)發(fā)技術(shù),使用Eclipse與Android SDK開(kāi)發(fā)工具實(shí)現(xiàn)功能,結(jié)合了國(guó)內(nèi)比較流行的百度地圖SDK作為地圖二次開(kāi)發(fā)接口,對(duì)于應(yīng)用軟件的后臺(tái)數(shù)據(jù)服務(wù)使用了SQLite嵌入式數(shù)據(jù)庫(kù)。因此該應(yīng)用軟件在技術(shù)上是絕對(duì)可行的。3.1.2經(jīng)濟(jì)可行性由于該應(yīng)用軟件設(shè)計(jì)的要求比較低,當(dāng)下主流的Android 2.3以上系統(tǒng)的移動(dòng)終端設(shè)備,無(wú)論是不同品牌、不同屏幕尺寸、不同配置的手機(jī)、平板、上網(wǎng)本等都可以作為理想的工具。另外,現(xiàn)在的Android智能移動(dòng)終端設(shè)備的價(jià)格都比較便宜,因此在經(jīng)濟(jì)上也是允許的。3.1.3操作可行性基于Android移動(dòng)終端的公交與美食

36、搜索應(yīng)用軟件界面設(shè)計(jì)簡(jiǎn)潔大方、操作簡(jiǎn)單、方便攜帶,用戶不論年齡、文化程度高低,都可以很輕松地上手。3.1.4硬件可行性現(xiàn)行的主流Android 2.3以上系統(tǒng)的安卓移動(dòng)終端設(shè)備都可以滿足本該應(yīng)用軟件的硬件要求。綜上所述,從技術(shù)方面,應(yīng)用軟件開(kāi)發(fā)所用到的開(kāi)發(fā)工具與技術(shù)都是可行的;從經(jīng)濟(jì)方面,該應(yīng)用軟件的設(shè)計(jì)所帶來(lái)的長(zhǎng)遠(yuǎn)利益遠(yuǎn)遠(yuǎn)大于其開(kāi)發(fā)成本,說(shuō)明具有經(jīng)濟(jì)價(jià)值;從用戶進(jìn)行公交查詢與美食搜索操作方面,不論用戶的年齡或文化程度,都可以很快的上手進(jìn)行操作,表明該應(yīng)用軟件是具有廣泛使用人群的。因此,從可行性分析來(lái)看該應(yīng)用軟件是可行的。3.2 功能需求分析需求分析是軟件開(kāi)發(fā)初始階段中的重中之重的活動(dòng),需求分

37、析的準(zhǔn)確與完善與否直接影響到系統(tǒng)后期的整個(gè)開(kāi)發(fā)過(guò)程。一個(gè)完整的好的需求分析,可以為系統(tǒng)后期開(kāi)發(fā)節(jié)省很多不必要的資源與勞力。3.2.1 功能需求分析在移動(dòng)互聯(lián)網(wǎng)與移動(dòng)智能終端與人們的日常生活越來(lái)越息息相關(guān)的現(xiàn)狀下,各種各樣的手機(jī)應(yīng)用與游戲總是充斥在我們身邊。其中,地圖類應(yīng)用由于其使用范圍廣和便捷性的特點(diǎn),占據(jù)著較大的市場(chǎng)空間。本課題在此背景下,研究開(kāi)發(fā)了一款基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件。最終完成的公交與美食搜索應(yīng)用軟件可供用戶在手機(jī)上進(jìn)行全國(guó)城市公交查詢、周邊美食搜索、美食導(dǎo)航與美食評(píng)分等操作?;贏ndroid移動(dòng)終端的公交與美食搜索應(yīng)用軟件具備有攜帶方便、操作簡(jiǎn)單、便于

38、開(kāi)展等特點(diǎn),根據(jù)對(duì)該公交查詢與美食搜索應(yīng)用軟件的特點(diǎn)和功能分析,可以得到它主要有如下功能:1.公交查詢公交查詢:在公交查詢中,用戶可以查詢?nèi)珖?guó)各大城市的公交線路,用戶通過(guò)輸入“城市名稱”和“公交線路名稱”即可查詢到相對(duì)應(yīng)的公交線路,線路向用戶展示了公交線路的始發(fā)站、終點(diǎn)站及路過(guò)站的詳情。正向|反向:用戶通過(guò)此功能查看公交線路的正向與反向線路示意圖。點(diǎn)擊報(bào)站:用戶通過(guò)點(diǎn)擊上一站、下一站按鈕,應(yīng)用軟件將根據(jù)用戶的對(duì)應(yīng)操作自動(dòng)報(bào)出站名。2.美食搜索美食搜索:在美食搜索功能中,應(yīng)用軟件首先會(huì)定位用戶的位置,并在地圖上以藍(lán)點(diǎn)進(jìn)行標(biāo)注。用戶通過(guò)美食搜索可以查看自己周邊5km之內(nèi)的美食,應(yīng)用程序?qū)⒕嚯x用戶最

39、近的10個(gè)美食地點(diǎn)在地圖上進(jìn)行標(biāo)注。用戶選擇某個(gè)美食地點(diǎn)后,可以查看詳情或直接對(duì)美食進(jìn)行評(píng)分。在美食詳情頁(yè)面,用戶可以通過(guò)點(diǎn)擊美食場(chǎng)所的電話進(jìn)行咨詢和訂餐;用戶也可以通過(guò)美食導(dǎo)航,導(dǎo)航尋找距離自己較近的美食地點(diǎn)??觳退阉鳎涸诳觳退阉髦?,應(yīng)用程序?qū)⒕嚯x用戶最近的10個(gè)快餐地點(diǎn)在地圖上進(jìn)行標(biāo)注,同樣為用戶提供了美食詳情、美食導(dǎo)航和美食評(píng)分服務(wù)。定位自己:用戶可以通過(guò)定位自己,更加清楚的確定美食與自己所在地點(diǎn)的方位和距離。切換模式:向用戶提供了基礎(chǔ)地圖和衛(wèi)星實(shí)景地圖兩種地圖模式,方便用戶針對(duì)周邊地形進(jìn)行辨認(rèn)。重置搜索:重置搜索將清空地圖上所有的標(biāo)記,重新定位用戶所在的位置。3.美食評(píng)分評(píng)分列表:評(píng)分

40、列表頁(yè)面將用戶所有已經(jīng)評(píng)分的美食以列表的形式進(jìn)行展示,用戶可以查看美食評(píng)分的地點(diǎn)、所在城市、評(píng)分時(shí)間等詳細(xì)信息。新增評(píng)分:用戶也可以通過(guò)新增評(píng)功能,新建一個(gè)美食地點(diǎn),相應(yīng)的對(duì)其菜色進(jìn)行評(píng)分。4.網(wǎng)上沖浪網(wǎng)上沖浪默認(rèn)鏈接地址為百度,它為用戶提供了一種休閑、放松的方式,一個(gè)快捷、輕巧的瀏覽器可以滿足用戶對(duì)網(wǎng)絡(luò)資源的需求。5.使用幫助使用幫助應(yīng)用軟件進(jìn)行了簡(jiǎn)單說(shuō)明和介紹,方便用戶更快地了解和上手該公交查詢與美食搜索應(yīng)用軟件。6.關(guān)于系統(tǒng)關(guān)于系統(tǒng)向用戶提供了應(yīng)用軟件的版本信息、開(kāi)發(fā)人員等相關(guān)信息。7.系統(tǒng)退出當(dāng)用戶需要退出應(yīng)用程序時(shí),系統(tǒng)提供了“退出按鈕”退出與連續(xù)兩次按手機(jī)“返回鍵”退出兩種方式,方

41、便用戶的操作。3.2.2 性能需求分析通過(guò)上述的可行性分析與功能需求分析以后,可以得到對(duì)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的性能要求,歸納如下:1.實(shí)用性為方便用戶的使用,設(shè)計(jì)出功能齊全、操作簡(jiǎn)單、方便攜帶、充分滿足用戶對(duì)公交查詢、美食搜索、美食評(píng)分等需求的手機(jī)應(yīng)用軟件。2.操作簡(jiǎn)單該應(yīng)用軟件應(yīng)于不同文化程度的用戶,界面簡(jiǎn)約大方,不會(huì)出現(xiàn)審美疲勞,同時(shí)公交查詢、美食搜索、美食評(píng)分等操作方式都是盡可能簡(jiǎn)單易行。3.用戶體驗(yàn)用戶在每次進(jìn)行公交查詢、美食搜索、美食評(píng)分等操作時(shí)都能有始終如一的體驗(yàn)。4.自治性基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件采用各個(gè)功能模塊相對(duì)獨(dú)立的設(shè)

42、計(jì),保證應(yīng)用程序的健壯性和穩(wěn)定性。5.可靠性本應(yīng)用軟件要求在任何時(shí)刻都能夠保證精確數(shù)據(jù)的能力,比如,保持美食評(píng)分?jǐn)?shù)據(jù)的原則性、持久性和一致性等。6.可用性用戶在何時(shí)何地都可以使用該應(yīng)用軟件自行進(jìn)行對(duì)應(yīng)的公交與美食查詢各項(xiàng)操作。7.可管理性基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的美食與美食評(píng)分的各項(xiàng)信息使用了單獨(dú)的SQLite嵌入式數(shù)據(jù)庫(kù)來(lái)進(jìn)行信息存儲(chǔ),保證了各項(xiàng)信息的可管理性。8.適應(yīng)性基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件可以適應(yīng)不同品牌、不同屏幕尺寸、不同配置的Android手機(jī)終端和pad,而且顯示效果與用戶體驗(yàn)始終如一。9.代碼可讀性好編寫(xiě)代碼的要求是簡(jiǎn)潔、易懂

43、。10.安全性在使用過(guò)程中,用戶的個(gè)人信息不會(huì)被第三方獲取或泄露。第四章 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)的最終目的是建立系統(tǒng)的物理模型,主要包括設(shè)計(jì)出系統(tǒng)的邏輯模型、分析系統(tǒng)功能需求與性能需求等。本文從系統(tǒng)的概要設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)和頁(yè)面設(shè)計(jì)進(jìn)行說(shuō)明。4.1 系統(tǒng)概要設(shè)計(jì)系統(tǒng)概要設(shè)計(jì)是軟件工程中一個(gè)重要的步驟和環(huán)節(jié),直接影響到軟件系統(tǒng)開(kāi)發(fā)下一階段的代碼編寫(xiě)和系統(tǒng)詳細(xì)實(shí)現(xiàn)。4.1.1 概要設(shè)計(jì)的基本步驟設(shè)計(jì)的基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件采用了模塊化的設(shè)計(jì)方法,對(duì)系統(tǒng)各個(gè)模塊的功能進(jìn)行歸納,將不同的功能進(jìn)行分類、對(duì)相同的功能進(jìn)行整合,在遵循模塊獨(dú)立性原則下將系統(tǒng)功能劃分為若干模塊。概要設(shè)計(jì)的具

44、體步驟如下:(1)確定每一個(gè)模塊要實(shí)現(xiàn)的功能;(2)確定模塊與模塊之間的調(diào)用關(guān)系;(3)確定模塊之間的接口,即模塊之間傳遞的信息;(4)評(píng)價(jià)模塊結(jié)構(gòu)的質(zhì)量。4.1.2 功能劃分組織結(jié)構(gòu)圖根據(jù)系統(tǒng)功能模塊的劃分和設(shè)計(jì),可以得到該手機(jī)應(yīng)用軟件具體的功能模塊圖,如圖4-1所示。該圖給出了詳細(xì)的模塊劃分和模塊組織結(jié)構(gòu),能夠直觀展現(xiàn)系統(tǒng)的功能結(jié)構(gòu)關(guān)系。圖4-1 功能劃分組織結(jié)構(gòu)圖基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件由公交查詢、美食搜索、美食評(píng)分和其它功能等四個(gè)主要功能模塊組成。各個(gè)功能模塊相互獨(dú)立,功能互補(bǔ)。在公交查詢功能中,用戶可以查詢?nèi)珖?guó)各大城市的公交線路;在美食搜索功能中,用戶可以檢

45、索自身周邊的快餐與美食,并且可以進(jìn)行查看詳情和線路導(dǎo)航操作;美食評(píng)分功能中用戶可以對(duì)各種美食的詳情進(jìn)行記錄和打分。基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件還提供了網(wǎng)上沖浪、關(guān)于系統(tǒng)、使用幫助、系統(tǒng)退出等一些附屬的非核心功能,可以使用戶有更好的交互體驗(yàn)。4.1.3 用例分析根據(jù)該手機(jī)應(yīng)用軟件各功能模塊之間所側(cè)重的功能分類不同,將它的用例分析分為兩大類,具體介紹如下分析。1.頂層用例用戶在手機(jī)公交查詢與美食搜索應(yīng)用軟件的頂層用例分析如圖4-2所示:圖4-2 頂層用例圖2.用戶各項(xiàng)操作用例圖(1)用戶在公交查詢模塊中查詢?nèi)珖?guó)城市公交線路操作用例圖如圖4-3所示:圖4-3 公交查詢操作用例圖

46、(2)用戶在美食搜索模塊中進(jìn)行周邊快餐美食搜索操作用例圖如圖4-4所示:圖4-4 周邊快餐美食搜索用例圖(3)用戶查看已評(píng)分美食列表操作用例圖如圖4-5所示:圖4-5 用戶查看已評(píng)分列表操作用例圖(4)用戶添加美食評(píng)分操作用例圖如圖4-6所示:圖4-6 用戶添加美食評(píng)分操作用例圖4.2 系統(tǒng)流程圖設(shè)計(jì)系統(tǒng)流程圖是對(duì)系統(tǒng)中一個(gè)單獨(dú)的功能模塊的流轉(zhuǎn)與執(zhí)行過(guò)程的另外一種直觀的表示,可以更加直觀的觀察到系統(tǒng)各個(gè)功能的流程是如何執(zhí)行的。下面圍繞基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的幾個(gè)主要功能的數(shù)據(jù)流程圖展開(kāi)說(shuō)明。4.2.1 公交查詢中全國(guó)城市公交線路查詢流程圖在公交查詢功能模塊中,用戶可

47、以查詢?nèi)珖?guó)各大城市公交線路。其具體流程圖如圖4-7所示:圖4-7 公交查詢流程圖4.2.2 美食評(píng)分中添加美食評(píng)分流程圖用戶在添加美食中,手機(jī)應(yīng)用軟件首先驗(yàn)證用戶輸入評(píng)分信息是否完整,然后將評(píng)分?jǐn)?shù)據(jù)完整的插入數(shù)據(jù)庫(kù)表中,方便用戶下次查看已評(píng)分的美食列表與詳情等。其具體流程圖如圖4-8所示:圖4-8 美食評(píng)分流程圖4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)是為軟件開(kāi)發(fā)的后續(xù)工作提供后臺(tái)的數(shù)據(jù)服務(wù)支持,方便系統(tǒng)前端可以及時(shí)、準(zhǔn)確地獲取所需要的數(shù)據(jù)。數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)該與系統(tǒng)設(shè)計(jì)緊密相結(jié)合,下面主要圍繞E-R圖的設(shè)計(jì)和數(shù)據(jù)庫(kù)表的設(shè)計(jì)展開(kāi)詳細(xì)說(shuō)明。4.3.1 E-R圖設(shè)計(jì)E-R圖可以直觀的表示概念模型。E-R圖由實(shí)

48、體、屬性、聯(lián)系三部分組成。根據(jù)系統(tǒng)數(shù)據(jù)庫(kù)的需求分析、實(shí)體數(shù)據(jù)項(xiàng)與數(shù)據(jù)結(jié)構(gòu),可以得到該手機(jī)公交查詢與美食搜索應(yīng)用軟件的E-R圖。因?yàn)樵谠搼?yīng)用程序中需要存儲(chǔ)的數(shù)據(jù)較少,下面對(duì)美食評(píng)分信息E-R圖進(jìn)行設(shè)計(jì),美食評(píng)分信息E-R圖如圖4-9所示:圖4-9 美食評(píng)分E-R圖4.3.2 數(shù)據(jù)庫(kù)表設(shè)計(jì)在完成系統(tǒng)的E-R模型之后,需要將E-R圖轉(zhuǎn)化為關(guān)系模型,設(shè)計(jì)出數(shù)據(jù)庫(kù)所需要的表單。關(guān)系數(shù)據(jù)庫(kù)中的二維表格可以很清楚地描述數(shù)據(jù)之間的聯(lián)系,下面是數(shù)據(jù)庫(kù)的邏輯實(shí)現(xiàn),以二維表的形式展示。根據(jù)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件各個(gè)模塊的功能需求,設(shè)計(jì)出該應(yīng)用程序中的SQLite數(shù)據(jù)庫(kù)表只有美食評(píng)分信息表

49、。數(shù)據(jù)庫(kù)中具體的數(shù)據(jù)表見(jiàn)以下介紹。美食評(píng)分信息表主要是存儲(chǔ)用戶針對(duì)某美食評(píng)分詳細(xì)信息的數(shù)據(jù),美食評(píng)分信息表如表4-1所示:表4-1 美食評(píng)分表表名反饋信息t_food_score列名數(shù)據(jù)類型空/非空約束條件含義IdInteger非空主鍵美食評(píng)分編號(hào)Place_nameVarChar非空-場(chǎng)所名稱Place_addressVarChar非空-場(chǎng)所地址CityVarChar非空-所在城市Tele_numVarChar非空-聯(lián)系電話Create_timeVarChar非空-評(píng)分時(shí)間Tese_foodVarChar非空-特色美食名稱Tese_scoreVarChar非空-特色美食評(píng)分Jingpin_f

50、oodVarChar非空-精品菜色名稱Jingpin_scoreVarChar非空-精品菜色評(píng)分4.4 頁(yè)面風(fēng)格設(shè)計(jì)不論是Web設(shè)計(jì)、或是移動(dòng)終端的應(yīng)用程序設(shè)計(jì)都要有一個(gè)設(shè)計(jì)風(fēng)格,一個(gè)好的設(shè)計(jì)風(fēng)格可以帶給人們愉悅的體驗(yàn),也可以給人們一種舒服的感覺(jué),這樣用戶體驗(yàn)也會(huì)好很多。相對(duì)于傳統(tǒng)的一些地圖類手機(jī)軟件,其目標(biāo)定位并不明確,導(dǎo)致應(yīng)用軟件的功能臃腫,并不被廣大用戶接納和喜愛(ài)。而基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件通過(guò)安卓移動(dòng)終端即可實(shí)現(xiàn),操作簡(jiǎn)單、方便攜帶,為用戶的出行與生活提供了便利。其次,一個(gè)好的移動(dòng)終端應(yīng)用軟件都要有自己的風(fēng)格設(shè)計(jì),一個(gè)差的第一印象也是留不住玩家與用戶的,因?yàn)闆](méi)

51、有給他們帶來(lái)吸引力?;贏ndroid移動(dòng)終端的公交與美食搜索應(yīng)用軟件主要是為用戶提供一種全新的、不同以往的地圖類應(yīng)用。操作簡(jiǎn)單、便于攜帶、易于使用是吸引用戶的關(guān)鍵,同時(shí),優(yōu)秀的手機(jī)應(yīng)用程序界面設(shè)計(jì)可以帶給用戶更好的體驗(yàn)、提升他們的心情愉悅感。4.4.1 主體風(fēng)格設(shè)計(jì)在移動(dòng)終端手機(jī)應(yīng)用程序的設(shè)計(jì)中,首先映入用戶眼簾的是應(yīng)用程序的整個(gè)頁(yè)面與布局設(shè)計(jì),一個(gè)優(yōu)秀的手機(jī)應(yīng)用程序主題風(fēng)格會(huì)留下更多的用戶。主題風(fēng)格的設(shè)計(jì)體現(xiàn)除了使用者的形象和延伸內(nèi)涵的色彩,手機(jī)應(yīng)用程序的標(biāo)志、標(biāo)題、主菜單和主色塊,給人以整體統(tǒng)一的感覺(jué)。與此同時(shí),可以在保證應(yīng)用程序主題風(fēng)格統(tǒng)一的基礎(chǔ)上適當(dāng)?shù)募尤肫渌线m的配色,給用戶一種和

52、諧統(tǒng)一的體驗(yàn)。應(yīng)用程序首頁(yè)如圖4-10所示:圖4-10 應(yīng)用程序首頁(yè)圖基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件采用了時(shí)下較為流程的Windows Phone磁貼界面設(shè)計(jì),主色調(diào)背景為黑色,頁(yè)面色彩輔以其它不同顏色和形狀的磁貼圖標(biāo),整體風(fēng)格協(xié)調(diào)統(tǒng)一、生動(dòng)形象、簡(jiǎn)單大方,可以吸引用戶的注意力,給他們耳目一新的感覺(jué)。4.4.2 應(yīng)用程序Logo設(shè)計(jì)在此基礎(chǔ)上,基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的Logo設(shè)計(jì)同樣都是簡(jiǎn)約大氣。Logo設(shè)計(jì)如圖4-11所示:圖4-11 Logo設(shè)計(jì)圖移動(dòng)終端的Logo設(shè)計(jì)是以現(xiàn)實(shí)生活中的餐盤(pán)餐具為靈感來(lái)源,采用了帶形狀的扁平化圖標(biāo)設(shè)計(jì),刀叉餐具

53、整齊的擺放在餐盤(pán)內(nèi),形象生動(dòng)的體現(xiàn)了該手機(jī)應(yīng)用軟件的主題,搭配簡(jiǎn)約卻不簡(jiǎn)單。4.5 系統(tǒng)包結(jié)構(gòu)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的設(shè)計(jì)主要是針對(duì)當(dāng)前主流的Android系統(tǒng),包括各種品牌、類型的手機(jī)、Pad設(shè)備等。在設(shè)計(jì)移動(dòng)終端應(yīng)用程序時(shí),兼顧了不同的手機(jī)屏幕、不同分辨率、不同的屏幕尺寸等因素,對(duì)布局文件做了相應(yīng)的自適應(yīng)性處理,針對(duì)應(yīng)用程序圖標(biāo)和一些背景圖片使用了9.png工具對(duì)其進(jìn)行了不同的拉伸,可以保證圖片在不同的設(shè)備上達(dá)到最好的顯示效果,提供始終如一的交互界面。該手機(jī)應(yīng)用軟件在移動(dòng)終端顯示的布局文件存放在項(xiàng)目工作區(qū)間的busANDfood/res/layout/文件夾下。

54、游戲程序布局主要利用LinearLayout線性布局,采用了Vertical與Horizontal兩種方式 ,在一些特殊的頁(yè)面使用RelativeLayout相對(duì)布局,使頁(yè)面保證整齊簡(jiǎn)潔,可以自適應(yīng)不同的手機(jī)屏幕。系統(tǒng)包結(jié)構(gòu)如圖4-12所示:圖4-12 系統(tǒng)包結(jié)構(gòu)對(duì)上圖中包結(jié)構(gòu)介紹如下:(1)src目錄:主要是完成工程的Java代碼編寫(xiě)。里面包括com.busANDfood、com.busANDfood.util、com.busANDfood.db、com.busANDfood.model和com.busANDfood.ui五個(gè)包文件,在com.busANDfood中存放了工程中用到的Acti

55、vity類,在com.busANDfood.util中存放了一些常用的工具類,在com.busANDfood.db中存放了和SQLite數(shù)據(jù)庫(kù)相關(guān)的數(shù)據(jù)庫(kù)表操作類,在com.busANDfood.model中存放了美食評(píng)分的數(shù)據(jù)實(shí)體類,在com.busANDfood.ui中存放了應(yīng)用軟件的警告框、忙碌框和提示框的自定義java類。(2)gen目錄:系統(tǒng)自動(dòng)生成的源代碼目錄,其中含有非常重要的R.java文件,它所包含的每一種靜態(tài)內(nèi)部類都對(duì)應(yīng)著相應(yīng)的一種資源。(3)assets目錄:資源目錄,在該工程項(xiàng)目中為空。(4)bin目錄:輸出文件夾。其中包含的.apk文件可以移植到手機(jī)上安裝運(yùn)行。(5)

56、res目錄:資源文件夾。其中drawable中存放了工程需要的圖像資料,raw中存放著音樂(lè)資料,anim中存放了頁(yè)面之間跳轉(zhuǎn)的動(dòng)畫(huà)。4.6 百度地圖SDK基于Android系統(tǒng)的位置監(jiān)控系統(tǒng)在移動(dòng)終端都是采用百度地圖作為支持的。百度地圖 Android SDK是一套基于Android 2.1及以上版本設(shè)備的應(yīng)用程序接口, 可以使用該套SDK開(kāi)發(fā)適用于Android系統(tǒng)移動(dòng)設(shè)備的地圖應(yīng)用,通過(guò)調(diào)用地圖SDK接口,可以輕松訪問(wèn)百度地圖服務(wù)和數(shù)據(jù),構(gòu)建功能豐富、交互性強(qiáng)的地圖類應(yīng)用程序3。同時(shí),百度地圖SDK也提供了地圖展示和地圖操作功能、支持周邊檢索、區(qū)域檢索和城市內(nèi)檢索、提供了地理坐標(biāo)和地址之間

57、相互轉(zhuǎn)換的能力、支持公交信息查詢、公交換乘查詢等路徑檢索、提供了基于GPS、WIFI、基站、IP混合定位模式等等。百度地圖的動(dòng)能異常強(qiáng)大,而且開(kāi)發(fā)者申請(qǐng)key時(shí)的操作要比谷歌地圖簡(jiǎn)便。百度地圖開(kāi)發(fā)者key申請(qǐng)如圖4-13所示:圖4-13 百度地圖key申請(qǐng)4.7 AndroidManifest.xml文件配置AndroidManifest.xml是Android應(yīng)用程序的清單文件,主要進(jìn)行權(quán)限和Activtiy的配置。它的主要功能有:對(duì)Android應(yīng)用程序中用到的Activity.java文件進(jìn)行聲明(有點(diǎn)類似于Java Web中對(duì)Servlet使用的聲明);聲明手機(jī)應(yīng)用程序的風(fēng)格、標(biāo)題欄等

58、樣式;對(duì)一些用戶使用權(quán)限的聲明,例如連接Internet權(quán)限、讀取手機(jī)SD卡、WiFi權(quán)限等等的權(quán)限聲明;聲明手機(jī)應(yīng)用程序所需要的AndroidAPI的最低版本級(jí)別和開(kāi)發(fā)目標(biāo)版本級(jí)別;列舉手機(jī)應(yīng)用程序所需要鏈接的庫(kù)等。本應(yīng)用清單文件中android:minSdkVersion=8android:targetSdkVersion=19分別代表了應(yīng)用程序運(yùn)行的最低版本和目標(biāo)版本,分別是Android 2.2和Android 4.3的系統(tǒng);而android:screenOrientation=portrait代表移動(dòng)設(shè)備的屏幕始終是豎直顯示的,保證了應(yīng)用程序在設(shè)備翻轉(zhuǎn)的時(shí)候不會(huì)跟隨翻轉(zhuǎn)而失真。第五章

59、 系統(tǒng)主要模塊的功能與實(shí)現(xiàn)系統(tǒng)的具體實(shí)現(xiàn)是整個(gè)軟件生命周期中最為重要的一個(gè)環(huán)節(jié),在此階段中需要花費(fèi)的人力和物力也是最多的。下面對(duì)基于Android移動(dòng)終端的公交與美食搜索應(yīng)用軟件的主要功能模塊進(jìn)行詳細(xì)介紹。5.1 歡迎頁(yè)面實(shí)現(xiàn)歡迎界面是用戶對(duì)一個(gè)移動(dòng)終端應(yīng)用的第一認(rèn)識(shí),本頁(yè)面使用Handler方法發(fā)送和處理消息,使歡迎頁(yè)面延遲三秒鐘執(zhí)行run方法跳轉(zhuǎn)到程序主界面歡迎頁(yè)面如圖5-1所示:圖5-1 歡迎頁(yè)面圖關(guān)鍵代碼如下:/延遲3秒后執(zhí)行run方法中的頁(yè)面跳轉(zhuǎn)new Handler().postDelayed(new Runnable() Override public void run() In

60、tent intent = new Intent(Welcome.this, MainFrame.class); startActivity(intent); Welcome.this.finish(); , 3000);5.2 公交查詢實(shí)現(xiàn)公交查詢功能模塊以百度地圖為支持平臺(tái),對(duì)其提供的應(yīng)用程序接口進(jìn)行二次開(kāi)發(fā)。為用戶提供了全國(guó)各大城市的公交線路查詢,下面針對(duì)公交線路查詢和點(diǎn)擊報(bào)站功能進(jìn)行介紹。5.2.1 公交查詢用戶在公交查詢頁(yè)面,通過(guò)輸入“城市名稱”和“公交線路名稱”,點(diǎn)擊查詢按鈕進(jìn)行公交線路查詢。并提供了“正向行駛”與“反向行駛”兩種線路模式,方便用戶查看?!罢蛐旭偂钡木€路圖如圖5-

溫馨提示

  • 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)論