陳 磊,黃鈺涵,姜雨晴
(1.臨沂大學(xué)歷史文化學(xué)院,山東 臨沂 276005; 2.蘭陵縣實驗中學(xué),山東 臨沂 277700)
微信小程序是騰訊公司于2017年1月發(fā)布的微信應(yīng)用平臺,是一種不需要下載安裝即可使用的應(yīng)用[1]。據(jù)騰訊公司2021年第三季度財報,截至2021年9月30日,微信及WeChat的合并月活躍賬戶數(shù)達(dá)12.6億。微信小程序以微信龐大的用戶群為入口,具有較大的用戶量提升空間。微信小程序與互聯(lián)網(wǎng)站、APP相比具有以下優(yōu)勢:一是大量節(jié)省用戶手機(jī)空間,無需下載,用完即走,應(yīng)用退出后,系統(tǒng)會立即釋放內(nèi)存[2]。二是微信小程序獲取方便,通過搜一搜或掃一掃即可找到。三是微信小程序開發(fā)成本低,技術(shù)門檻低。
微信小程序推出后便迅速應(yīng)用于旅游業(yè),國內(nèi)各大旅游公司如攜程、去哪兒、途牛、同程藝龍等都于2018年推出了旅游微信小程序,獲得了大量用戶訪問,取得了較好業(yè)績。線下旅行公司如旅行社、景區(qū)、酒店等也紛紛開發(fā)微信小程序,進(jìn)行產(chǎn)品與服務(wù)的推廣與應(yīng)用。
臨沂市旅游資源豐富,分布廣,總面積17 191.2 km2,是山東省面積最大的地級市,擁有97個3A級及以上景區(qū),其中5A級景區(qū)1個,4A級景區(qū)27個,分散在9縣3區(qū)中,旅游集群效應(yīng)不明顯。但是,可以通過旅游APP或微信小程序,將分散的旅游景區(qū)進(jìn)行整合營銷,提升臨沂市旅游景區(qū)集群效應(yīng),打造臨沂市全域旅游形象。目前,針對臨沂旅游的微信小程序未見上線。以微信小程序為基礎(chǔ),開發(fā)臨沂智慧旅游應(yīng)用平臺——“臨沂旅游通”,以期方便臨沂游客,增加臨沂旅游美譽(yù)度,提高臨沂市旅游業(yè)收入。
臨沂市旅游業(yè)以假日旅游經(jīng)濟(jì)為主,多數(shù)游客采用自助旅游方式。2019年臨沂市文旅局官網(wǎng)公布的統(tǒng)計數(shù)據(jù)顯示,臨沂市元旦假期間共接待游客85.31萬人次,實現(xiàn)門票收入1 519.11萬元,同比分別增長20.27%和24.85%,國慶假日期間接待游客616.2萬人次,同比增長10.2%,實現(xiàn)旅游消費(fèi)36.5億元,同比增長12.7%。游客主要以臨沂市本地市民和周邊的徐州、連云港、濟(jì)寧、濟(jì)南、淄博、青島、煙臺和威海市民為主,70%以上的游客采取自駕游或自助游方式,自行設(shè)計旅游線路,借助OTA(在線旅游)渠道,預(yù)訂酒店和景區(qū)門票。搜索發(fā)現(xiàn),OTA網(wǎng)站并沒有提供臨沂市本地旅游線路和語音導(dǎo)游服務(wù),游客只是在OTA預(yù)定旅游票務(wù),因此可以通過設(shè)計更為便捷的微信小程序,為游客提供旅游線路選擇、景區(qū)語音導(dǎo)游、路線導(dǎo)航、天氣預(yù)報等服務(wù),為游客帶來更好的旅游體驗。
旅游應(yīng)用平臺要求頁面簡潔美觀、友好實用。根據(jù)微信小程序功能,以臨沂市游客實際需求為原則,設(shè)計的“臨沂旅游通”微信小程序功能如圖1所示,主要有景區(qū)VR展現(xiàn)、旅游線路推薦、景點音頻講解、導(dǎo)航等功能?!芭R沂旅游通”微信小程序提供臨沂市全部3A級及以上景區(qū)VR展現(xiàn),各景區(qū)按照景觀特點分為紅色風(fēng)情、綠色沂蒙、文韜武略、地質(zhì)奇觀、溫泉養(yǎng)生、商城水都、美麗鄉(xiāng)村等7種類型。旅游線路推薦模塊提供多條一日游線路,游客可以根據(jù)旅游時間在一日游的基礎(chǔ)上進(jìn)行自由組合,形成二日及以上旅游行程。旅游線路規(guī)劃遵循時間最省、路徑最短、景點內(nèi)容最豐富、最有價值原則,并且推薦附近酒店,提供酒店內(nèi)客房和餐飲部的內(nèi)景和外景實拍圖片。一鍵導(dǎo)航中提供實時定位、地點搜索、導(dǎo)航等功能,主要通過調(diào)用手機(jī)芯片中的GPS定位來實現(xiàn)小程序?qū)崟r定位功能,通過高德地圖API接口實現(xiàn)地點搜索和導(dǎo)航功能[3]。景點音頻講解中,提供各景區(qū)主要游覽點的講解詞。熱門VR欄擬與各景區(qū)合作,在首頁開展VR展現(xiàn)競價推送。
圖1 “臨沂旅游通”微信小程序功能Fig.1 “Number Travel” WeChat APP function
“臨沂旅游通”微信小程序提供臨沂市97個景區(qū)VR展現(xiàn),其分別歸屬的旅游景區(qū)類型如表1所示。
表1 臨沂市“臨沂旅游通”微信小程序VR景區(qū)類型劃分Tab.1 VR scenic area type division of Linyi “Number Travel” WeChat APP
續(xù)表1
微信小程序中,97個景區(qū)全部標(biāo)注在高德地圖中,點擊地圖上的景區(qū)名稱,分別彈出“VR速覽”和“去這里”兩個對話框選項,點擊“VR速覽”,則會呈現(xiàn)該景區(qū)從入口到各主要景點場景的VR視頻,有場景選擇、景點解說、一鍵導(dǎo)航、說一說(微信景區(qū)評價)、音樂等按鈕。
“臨沂旅游通”微信小程序界面前端的實現(xiàn)主要依靠HTML、CSS、JavaScript邏輯框架等技術(shù)。程序后臺數(shù)據(jù)處理主要依靠MySQL數(shù)據(jù)庫、PHP、XML、JavaScript邏輯框架等技術(shù)。
將臨沂市各旅游景區(qū)的VR全景視頻、酒店客房與餐飲部的展示圖片、電子導(dǎo)游音頻文件等儲存在MySQL數(shù)據(jù)庫中。用戶在使用“臨沂旅游通”微信小程序時,通過點擊各類“VR景區(qū)”按鈕進(jìn)入界面時,通過小程序調(diào)用API接口中的wx.getlocation獲取用戶當(dāng)前坐標(biāo),通過wx.request語句向服務(wù)器請求調(diào)用儲存好的該地地理位置,服務(wù)器通過wx.response對用戶的請求給予響應(yīng)反饋并將結(jié)果響應(yīng)至前端頁面中,游客可以通過前端頁面直接觀看臨沂市各景區(qū)實景圖。
在編輯器中創(chuàng)建wxSearch 模板目錄、image和pages 目錄(同級別)。一是實現(xiàn)搜索功能。首頁目錄為/pages/home,其下的home.wxml、home.wxss、home.js、home.json 為首頁模板頁面。搜索功能目錄wxSearch其下的wxSearch.js、wxSearch.json、wxSearch.wxml、wxSearch.wxss為搜索功能,通過pages下的home調(diào)用wxSearch 實現(xiàn)首頁搜索功能。首頁搜索框下導(dǎo)航欄的實現(xiàn),在home.wxml使用bindtap進(jìn)行點擊事件監(jiān)聽,設(shè)置事件名稱為“navbarTap”,并在home.js里設(shè)置這個事件對應(yīng)的算法處理,在組件上使用wx:for控制屬性綁定數(shù)組,使數(shù)組中各項數(shù)據(jù)重復(fù)渲染該組件,默認(rèn)數(shù)組的當(dāng)前項的下標(biāo)變量名為index,數(shù)組當(dāng)前項的變量名為item。二是實現(xiàn)圖片輪播。將準(zhǔn)備好的景區(qū)圖片放到image目錄里,在home.wxml文件中通過調(diào)用swiper組件,swiper組件里有有限個進(jìn)行輪播的swiper-item,在這有限個swiper-item里面分別添加image標(biāo)簽,并給image標(biāo)簽的src屬性標(biāo)明圖片對應(yīng)的路徑,考慮到圖片寬度可能不夠,給最外層的swiper標(biāo)簽添加class屬性,值為lunbo,在home.wxss里面編寫樣式,為了避免用鼠標(biāo)拖拽才會開始輪播,為它設(shè)置了三個屬性,分別是indicator-dot(圖片下方的小圓點)、autoplay(自動播放)、interval(設(shè)置時間間隔)。
在MySQL數(shù)據(jù)庫中通過SQL語句建立表并設(shè)置所需字段,用來儲存旅游目的地、路線、花費(fèi)、時間、人數(shù)等,在“臨沂旅游通”小程序中搜索框使用觸發(fā)式代碼,當(dāng)關(guān)鍵詞被觸發(fā)時,通過調(diào)用函數(shù)中的request向服務(wù)器發(fā)起請求,與后臺PHP代碼業(yè)務(wù)層交互進(jìn)行,從數(shù)據(jù)庫中調(diào)用最符合關(guān)鍵詞的數(shù)據(jù)信息并返還到程序控制器層中,通過控制器層設(shè)置響應(yīng)界面。通過智能感應(yīng)為游客提供便捷省時的參觀路徑,可以實現(xiàn)周邊特色推薦并進(jìn)行基礎(chǔ)報價,改變傳統(tǒng)旅游市場APP單一路線服務(wù)的弊端。
在Android編程開發(fā)小程序環(huán)境時,通過GPS模塊管理類Location Manager來實現(xiàn)管理與GPS定位服務(wù)相關(guān)功能,即通過在小程序中調(diào)用手機(jī)芯片中的GPS定位來實現(xiàn)程序?qū)崟r定位功能;儲存在云端服務(wù)器MySQL數(shù)據(jù)庫中的導(dǎo)游電子講解音頻信息,通過與wx.getlocation代碼類調(diào)用GPS定位互動,及時有效解決游覽需求問題;也可以通過在home目錄函數(shù)調(diào)用,使景區(qū)講解顯示在首頁,利用wx.navigateTo(OBJECT) 保留當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的電子講解頁面,使用wx.navigateBack可以返回到原頁面。對于電子講解音頻,在index.wxml文件中撰寫調(diào)用audio組件,src為播放音頻的地址。修改index.wxml文件,將音頻數(shù)據(jù)存儲在index.js目錄下,將具體代碼放在data{}之間,即做到前后端數(shù)據(jù)分離。控制音頻暫停、跳轉(zhuǎn)、播放等功能需要相關(guān)API的支持,音頻播放、暫停等功能需要使用AudioContext接口,使用該接口之前,需要使用wx.createAudioContext()創(chuàng)建對象,利用wx.playVoice(OBJECT) 開始播放語音,同時只允許一個語音文件正在播放,如果前一個語音文件還沒播放完,將中斷前一個語音播放。利用wx.pauseVoice() 暫停正在播放的語音,再次調(diào)用wx.playVoice播放同一個文件時,會從暫停處開始播放。如果想從頭開始播放,需要先調(diào)用wx.stopVoice,利用 wx.stopVoice() 結(jié)束播放語音。
通過在home.wxml和home.wxss目錄下調(diào)用函數(shù),在首頁建立“個人中心”。根據(jù)微信精確定位,當(dāng)用戶在評價景點時,點擊“個人中心”,小程序先判斷用戶的當(dāng)前位置,使用小程序API接口中的wx.getlocation獲取用戶當(dāng)前坐標(biāo),由于確定位置時會存在誤差,故此給出一個誤差值500 m,只要用戶在景點周圍500 m內(nèi),即可獲得評價景點權(quán)限,超過500 m后,判斷用戶不合要求,提示用戶未在有效范圍內(nèi)。待用戶進(jìn)入有效范圍內(nèi),即可跳轉(zhuǎn)到景點評分頁面,最后將用戶評分信息提交到后臺,計入數(shù)據(jù)庫,展示到前臺頁面,顯示用戶評價信息。當(dāng)用戶在某個景點定位過后,通過微信賬戶授權(quán)收集游覽過的景點信息存儲到數(shù)據(jù)庫中。當(dāng)用戶不在該景點,但是用戶數(shù)據(jù)庫表單下有該景點的游覽記錄時,實現(xiàn)用戶不在此處景點500 m范圍也可以評論。通過以上設(shè)置,可以有效解決一些旅游企業(yè)通過各類APP惡意刷好評的亂象。
將微信小程序應(yīng)用于旅游業(yè),相比于APP和旅游網(wǎng)站的開發(fā)具有兩大優(yōu)勢:一是開發(fā)簡便、快捷,能夠輕松實現(xiàn)強(qiáng)大的功能。二是可以繼承微信近12億的龐大用戶群,減少營銷成本。但是微信小程序也存在不支持將內(nèi)容轉(zhuǎn)發(fā)至朋友圈、僅支持個別關(guān)鍵詞搜索等問題[4],因此利用微信小程序進(jìn)行旅游平臺開發(fā)還需要注意以下問題:一是微信小程序不容易黏住用戶。微信的特點是“即用即走”,無需安裝與卸載,對于用戶來說使用很方便,但是對于開發(fā)者來說就存在停留時間短、不容易黏住用戶的問題,并且用戶很容易流失,因此如何讓用戶用完再來,是微信小程序亟需解決的問題。二是微信小程序入口偏少。較多微信用戶對微信小程序不熟悉,甚至找不到小程序入口,與小程序推廣力度小有關(guān)系,也與小程序入口設(shè)置少且不醒目有關(guān)系。目前,在微信界面,只能通過“搜索”和“發(fā)現(xiàn)”進(jìn)入,在用戶經(jīng)常使用的首頁、通訊錄和“我”界面是找不到的。三是智慧旅游微信小程序平臺開發(fā)需要多方參與。功能強(qiáng)大、使用便捷的高品質(zhì)智慧旅游微信小程序需要由眾多專業(yè)人員共同打造,如微信小程序界面設(shè)計需要美工專業(yè)人員,導(dǎo)游詞撰寫與旅游線路設(shè)計需要旅游管理專業(yè)人員,電子導(dǎo)游詞錄制需要播音專業(yè)人員,VR場景制作需要數(shù)字媒體專業(yè)人員,微信小程序的后臺需要信息工程專業(yè)人員維護(hù)等。