張國(guó)平++李亞麗++苗志慧
摘要:隨著Internet的發(fā)展越來越快,互聯(lián)網(wǎng)漸漸覆蓋了全球。旅游業(yè)的信息正通過網(wǎng)絡(luò)與全球接軌,旅游業(yè)也在慢慢的實(shí)現(xiàn)信息化。該文采用Android技術(shù)設(shè)計(jì)實(shí)現(xiàn)了一個(gè)基于手機(jī)端的無憂旅軟件,主要完成了用戶注冊(cè)登錄、景點(diǎn)收藏、景點(diǎn)評(píng)論經(jīng)、城市切換和景點(diǎn)搜索等功能,該軟件能為不跟團(tuán)旅行的用戶群體,提供便捷有效的景點(diǎn)信息,旅游路線信息和旅游服務(wù)信息等,保證用戶的旅游一路無憂。
關(guān)鍵詞:Android;無憂旅軟件;旅游
中圖分類號(hào):TP317 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)30-0091-02
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展和普及,旅游業(yè)發(fā)展越來越迅速,人們生活水平的不斷提高,越來越多的人不甘于跟著旅行社或旅游公司的計(jì)劃出行,而是想自己約上家人或朋友自行出去旅行[1-2],為了使旅游的相關(guān)信息資源網(wǎng)絡(luò)化、達(dá)到資源的充分利用[3],本文開發(fā)了一款基于Android平臺(tái)的無憂旅軟件,能為用戶提供全面的旅游景點(diǎn)信息,旅游路線信息和旅游服務(wù)等信息,避免因?yàn)橛脩舨皇煜ぢ糜纬鞘械沫h(huán)境,而造成人力、物力和財(cái)力等方面的浪費(fèi),提高用戶的游泳出行體驗(yàn),保證用戶的旅行一路無憂。
1 需求分析
1.1 軟件設(shè)計(jì)目標(biāo)
本軟件是基于安卓的、為廣大隨心出行的用戶設(shè)計(jì)的一款關(guān)于旅游的平臺(tái)。為了給游客提供一個(gè)免費(fèi)的、多方位的景點(diǎn)查詢的平臺(tái)。具體的功能期望實(shí)現(xiàn)如下目標(biāo):
1) 運(yùn)行軟件,能夠準(zhǔn)確定位當(dāng)前用戶所在的城市。也可以隨時(shí)切換當(dāng)前城市,瀏覽景點(diǎn)。
2) 游客能夠?yàn)g覽景點(diǎn)、隨心查找景點(diǎn)、查看景點(diǎn)的詳細(xì)信息、切換城市、查看景點(diǎn)評(píng)論。
3) 已注冊(cè)的用戶除了擁有游客的所有功能以外,當(dāng)用戶登錄后可以查看個(gè)人基本信息、編輯個(gè)人基本信息、可以收藏景點(diǎn)、刪除收藏景點(diǎn)、評(píng)論景點(diǎn)。
1.2 業(yè)務(wù)操作流程
沒有進(jìn)行注冊(cè)的用戶(游客)能夠通過注冊(cè),成為本軟件的用戶。如果在沒有注冊(cè)的狀態(tài)下,游客也可以使用軟件,主要可以進(jìn)行瀏覽景點(diǎn)、查看其詳細(xì)信息、查找指定城市、瀏覽當(dāng)前景點(diǎn)的熱門景點(diǎn)、私人訂制(選擇更適合自己和家人的景點(diǎn),如:主題公園、親子游、游山水等),查看景點(diǎn)評(píng)論信息。注冊(cè)的用戶可以登錄、查看個(gè)人信息,編輯個(gè)人基本信息、收藏景點(diǎn)、查詢收藏景點(diǎn)、刪除所收藏的景點(diǎn)、對(duì)景點(diǎn)進(jìn)行評(píng)論等。
1.3 功能需求
本軟件主要包括注冊(cè)用戶和未注冊(cè)的游客2種用戶角色。未注冊(cè)的用戶能定位當(dāng)前城市,查看當(dāng)前城市景點(diǎn)信息、查看熱門目的地、熱門景點(diǎn)、熱門酒店和景色,私人訂制的一些景點(diǎn)、查看景點(diǎn)的詳細(xì)信息(包括景點(diǎn)的評(píng)論信息,景點(diǎn)的門票信息,景點(diǎn)的詳細(xì)地址,景點(diǎn)開放時(shí)間,景點(diǎn)優(yōu)惠信息,景點(diǎn)重要提醒,和景點(diǎn)的文字及圖片介紹),切換當(dāng)前城市,搜索景點(diǎn),查看搜索歷史等。注冊(cè)并登陸成功的用戶,除了具有游客所有的操作權(quán)限外,還可以將某個(gè)景點(diǎn)進(jìn)行收藏,可以查看收藏列表,也可以刪除某個(gè)已收藏景點(diǎn),可以對(duì)某個(gè)景點(diǎn)進(jìn)行評(píng)論,可以查看個(gè)人基本信息,編輯個(gè)人信息(主要包括用戶頭像,用戶簽名,用戶城市等)。軟件總用例圖如圖1所示。
圖1 軟件總體用例圖
2 系統(tǒng)功能設(shè)計(jì)
通過前期的需求分析得出,本軟件的使用者可以分為兩類,沒有注冊(cè)是游客,已注冊(cè)的用戶。游客可以進(jìn)行瀏覽景點(diǎn),查景點(diǎn)詳情,切換目前的城市,查看景點(diǎn)詳細(xì)信息及其評(píng)論信息等;注冊(cè)用戶登錄可以收藏景點(diǎn)、查看收藏列表、刪除收藏景點(diǎn)、評(píng)論景點(diǎn)、查看并編輯個(gè)人基本信息。根據(jù)這些功能,將頁(yè)面主要分為四個(gè)模塊,主要有首頁(yè)模塊、目的地模塊、發(fā)現(xiàn)模塊和我的模塊。其中這些模塊的具有的具體功能設(shè)計(jì)如軟件功能模塊圖2所示。
圖2 軟件功能結(jié)構(gòu)圖
3 實(shí)體類和工具類的設(shè)計(jì)
軟件中主要的實(shí)體類的描述如下:
1) MyUser 類:這個(gè)類所對(duì)應(yīng)的就是的用戶表,主要用來描述用戶的信息,包括用戶名、密碼、聯(lián)系方式、年紀(jì)、血型、星座、簽名、愛好、城市、職業(yè)、用戶頭像地址。
2) ScenicInfo類:對(duì)應(yīng)景點(diǎn)表,主要描述景點(diǎn)的相關(guān)信息,包括景點(diǎn)編號(hào)、景點(diǎn)名、景點(diǎn)票價(jià)、景點(diǎn)介紹、景點(diǎn)地址,景點(diǎn)地區(qū)。
3) CmtInfo 類:對(duì)應(yīng)評(píng)論表,主要描述景點(diǎn)的評(píng)論信息,包括用戶ID、景點(diǎn)ID、評(píng)論的內(nèi)容、評(píng)論ID、評(píng)論的日期。
4) MoreDataDetail類:對(duì)應(yīng)景點(diǎn)詳細(xì)信息表,主要描述景點(diǎn)的額外信息,這些信息主要有開放時(shí)間、重要提醒、溫馨提示、優(yōu)惠信息等。
5) CollectData類:對(duì)應(yīng)用戶的收藏記錄,主要記錄用戶收藏景點(diǎn)的信息,這些信息主要包括景點(diǎn)、收藏者、收藏時(shí)間。
6) RegionInfo類:對(duì)應(yīng)地區(qū)表,主要描述地區(qū)信息,包括地區(qū)編號(hào)、地區(qū)所在父節(jié)點(diǎn)、地區(qū)名、地區(qū)所屬類型、地區(qū)首字母。
7) SearchHistory類:對(duì)應(yīng)歷史搜尋表,用來描述用戶歷史搜索信息,主要包括歷史編號(hào),搜索關(guān)鍵詞,搜索時(shí)間。
軟件中主要的工具類的描述如下:
1) BitmapUtils:該類是一系列與圖片相關(guān)的工具類,包括對(duì)圖片的大小、質(zhì)量壓縮、獲取文件的擴(kuò)展名。
2) StringUtils:該類主要是與字符串相關(guān)的工具類,主要方法有判斷字符串的值是否為空、返回字符串的長(zhǎng)度、首字母大寫等。
3) ToastUtils:該類主要是與Toast相關(guān)的操作,方便用戶使用Toast對(duì)象,盡心相關(guān)信息的提示。
4) DensityUtils:該類主要是dp和px之間的相互轉(zhuǎn)化工具。這樣有利于軟件做屏幕適配。
5) RegularUtils:該類是一系列校驗(yàn)方法,如驗(yàn)證手機(jī)號(hào)是否正確,驗(yàn)證用戶名,驗(yàn)證密碼等。
6) TranslucentUtils:該類是一系列設(shè)置狀態(tài)欄顏色的方法,或者設(shè)置為透明狀態(tài)。
4 核心功能模塊的詳細(xì)設(shè)計(jì)
4.1 城市切換功能的實(shí)現(xiàn)
頁(yè)面右側(cè)的索引是一個(gè)自定義控件,繼承自View,主要的顯示效果都是在方法onDraw()中寫的,比如當(dāng)獲取焦點(diǎn)時(shí)改變背景顏色。而具體點(diǎn)擊的是哪一個(gè)字母,是在方法dispatchTouchEvent()中定義的,其實(shí)每個(gè)字母所占的高度是一定的,根據(jù)用戶點(diǎn)擊y坐標(biāo)所占總高度的比例與數(shù)組長(zhǎng)度的乘積就是所點(diǎn)擊的字母是數(shù)組中的第幾個(gè),從而知道是什么字母。然后將該字母的城市查找出來,并定位到指定地點(diǎn)。
根據(jù)用戶選擇的城市信息,從而獲取該城市的景點(diǎn)數(shù)據(jù)的實(shí)現(xiàn)過程如下:
1) 頁(yè)面獲取到用戶所選擇的城市。
2) 以城市作為參數(shù),從服務(wù)器返回城市的經(jīng)緯度。
3) 以經(jīng)緯度為參數(shù),服務(wù)器進(jìn)行查找對(duì)應(yīng)的景點(diǎn)數(shù)據(jù),并返回首頁(yè),展示相應(yīng)城市的數(shù)據(jù)。
4.2 整體UI大框架
整體的頁(yè)面分為四個(gè)頁(yè)面,是由RadioGroup和RadioButton進(jìn)行控制的,四個(gè)頁(yè)面只能選擇一個(gè)頁(yè)面。在首頁(yè)中,封裝了好幾層控件,其中有自定義的viewpager控件,自定義的listview控件,還有指示器和viewpager的組合使用,使得整個(gè)軟件的頁(yè)面清晰美觀。軟件首頁(yè)面如圖3所示。
4.3 景點(diǎn)收藏功能的實(shí)現(xiàn)
1) 用戶點(diǎn)擊我的收藏圖標(biāo),觸發(fā)該圖標(biāo)的點(diǎn)擊事件。
2) 在這個(gè)點(diǎn)擊事件中,查詢出該用戶收藏表中的所有數(shù)據(jù),將每一條數(shù)據(jù)封裝成一個(gè)景點(diǎn)收藏對(duì)象,然后將對(duì)象存入到一個(gè)ArrayList集合中,并將該集合返回。
3) 拿到從數(shù)據(jù)庫(kù)中查詢的數(shù)據(jù)集合后,遍歷該集合,將每個(gè)收藏的記錄展示到頁(yè)面的ListView中。景點(diǎn)收藏界面如圖4所示。
4.4 景分享功能的實(shí)現(xiàn)
1) 獲取SharedSDK:在官方網(wǎng)站上注冊(cè)自己的用戶,并創(chuàng)建應(yīng)用,下載相關(guān)的SDK。
2) 導(dǎo)入SharedSDK:將下載好的jar包和資源放置到指定的位置。
3) 添加應(yīng)用信息:最簡(jiǎn)單的方法是配置文件SharedSDK.xml。
4) 配置文件AndroidManifest.xml。
5) 添加響應(yīng)的代碼到程序中。
5 結(jié)束語
隨著網(wǎng)絡(luò)技術(shù)和社會(huì)經(jīng)濟(jì)的快速發(fā)展,旅游業(yè)的發(fā)展越來越迅速,為了方便個(gè)體性用戶群體能快速獲取各個(gè)城市的旅游信息,取代PC電腦的移動(dòng)終端為媒介, 開發(fā)一款基于手機(jī)應(yīng)用的無憂旅APP軟件,讓用戶能夠快速、準(zhǔn)確、全面的了解景點(diǎn)的最新最好最實(shí)惠的旅游資訊。同時(shí),及時(shí)分享旅游的點(diǎn)點(diǎn)滴滴,實(shí)現(xiàn)人與機(jī),人與人之間的優(yōu)質(zhì)互動(dòng),具有重要的現(xiàn)實(shí)意義。
參考文獻(xiàn):
[1] 鐘鍵.基于Android的城市旅游軟件設(shè)計(jì)與實(shí)現(xiàn)[J]. 福建電腦, 2016(5):120-121.
[2] 張龍.談我國(guó)智慧旅游軟件的發(fā)展現(xiàn)狀[J]. 現(xiàn)代交際, 2015(10):29-29.
[3] 解頤,方紅亮. 基于HTML5腳本的旅游軟件開發(fā)[J]. 電腦編程技巧與維護(hù), 2017(7):35-37.endprint