孟杉 任進(jìn)
摘 要:隨著科技的不斷發(fā)展,移動(dòng)終端和互聯(lián)網(wǎng)技術(shù)已經(jīng)完全融入到了人們的日常生活中。一部移動(dòng)終端可以幫助人們了解和解決很多事情。患者可以利用醫(yī)院APP進(jìn)行在線預(yù)約、在線就醫(yī),人們也可以利用手機(jī)APP進(jìn)行在線訂餐、在線購(gòu)物、在線查詢等。文中介紹了一款約伴APP,利用此APP可以在線預(yù)約同伴,進(jìn)行外出游玩、旅行等。
關(guān)鍵詞:Android;百度地圖;交流互動(dòng);數(shù)據(jù)庫(kù)
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2018)03-0-02
0 引 言
如今,人們的生活水平得到了大幅度提升,利用閑暇時(shí)間出去游玩、旅行的愿望和需求變得更加強(qiáng)烈[1],但有時(shí)卻難以找到志同道合的旅伴。約伴-出行系統(tǒng)正是一款基于Android操作系統(tǒng)為人們提供線上進(jìn)行交互、線下組織活動(dòng)的APP。用戶可以通過(guò)線上發(fā)布出行旅伴需求或根據(jù)他人發(fā)布的信息進(jìn)行交流,找到合適的出行伴侶,同時(shí)系統(tǒng)也會(huì)根據(jù)用戶需求自動(dòng)推薦相關(guān)出行方案。
約伴-出行系統(tǒng)基于移動(dòng)客戶端的C/S架構(gòu),適配Android 2.3以上的系統(tǒng),能服務(wù)于更廣大的用戶。
1 系統(tǒng)整體功能設(shè)計(jì)
約伴-出行系統(tǒng)功能模塊如圖1所示。
1.1 個(gè)人信息管理
該模塊主要負(fù)責(zé)進(jìn)行用戶個(gè)人相關(guān)信息設(shè)置,通信錄好友管理。
1.1.1 用戶注冊(cè)
在用戶首次使用此APP時(shí)須注冊(cè)賬戶并設(shè)置登錄密碼,點(diǎn)擊“注冊(cè)”按鈕,跳轉(zhuǎn)到注冊(cè)界面。用戶設(shè)置其賬號(hào)和密碼,即可完成注冊(cè)。此APP賬號(hào)采用手機(jī)號(hào)形式,利用正則表達(dá)式判斷用戶輸入的賬號(hào)是否合法。判斷輸入內(nèi)容的合法性之后,就可以調(diào)用網(wǎng)絡(luò)請(qǐng)求把賬號(hào)和密碼傳給服務(wù)器,同時(shí)服務(wù)器獲取到用戶的相關(guān)信息。
1.1.2 用戶登錄
賬戶注冊(cè)成功后,用戶就可以在登錄界面輸入賬號(hào)和密碼,登錄此APP。當(dāng)用戶點(diǎn)擊“登錄”按鈕時(shí),系統(tǒng)會(huì)預(yù)先判斷賬號(hào)和密碼是否合法,若不合法,系統(tǒng)會(huì)在屏幕下方顯示登錄信息有誤。提示語(yǔ)采用的是Android原生的控件Toast彈窗提示,時(shí)間為1 s。
1.1.3 用戶信息設(shè)置
在該模塊,用戶可以根據(jù)自身情況設(shè)置個(gè)人相關(guān)信息。若用戶上傳個(gè)人頭像,選頭像時(shí)進(jìn)入本地圖庫(kù)篩選后上傳或者拍照上傳,采用Base64方式上傳至服務(wù)器。此外,用戶還可以設(shè)置昵稱、聯(lián)系方式、個(gè)人情況簡(jiǎn)介,管理通信錄等。
1.2 出行管理
1.2.1 出行需求發(fā)布
此模塊是用戶發(fā)布出行消息并與其他用戶交互的主要途徑。用戶能夠在此模塊上發(fā)布自己的出行消息,如目的地、出行方式以及約伴要求等。同時(shí)系統(tǒng)會(huì)將用戶所發(fā)布的消息存入數(shù)據(jù)庫(kù),以備其他模塊調(diào)用。
1.2.2 信息瀏覽
用戶登錄出行-約伴系統(tǒng)成功后,與用戶進(jìn)行交互的第一個(gè)界面如圖2所示。在此界面上,用戶可以瀏覽其他用戶所發(fā)布的出行信息,同時(shí)系統(tǒng)會(huì)根據(jù)用戶所設(shè)置的個(gè)人相關(guān)信息、發(fā)布的出行需求信息以及用戶最近瀏覽關(guān)注的信息自動(dòng)置頂推薦相關(guān)的出行信息。本模塊不涉及用戶隱私,僅顯示其發(fā)布的需求內(nèi)容。列表的數(shù)據(jù)均通過(guò)請(qǐng)求后臺(tái)接口獲得,獲得數(shù)據(jù)后,將其放入ArrayList中并傳入RecyclerView設(shè)置的適配器后刷新列表,當(dāng)用戶點(diǎn)擊列表中的某一項(xiàng)時(shí),把對(duì)應(yīng)集合中相應(yīng)位置的數(shù)據(jù)取出來(lái),主要取其文章的ID,跳轉(zhuǎn)并傳值到詳情頁(yè),使用intent.putExtra(key, value)形式傳值。用戶可以根據(jù)自身需求決定是否接受約伴邀請(qǐng)或者用戶主動(dòng)對(duì)他人發(fā)出要約請(qǐng)求。
1.2.3 出行路徑規(guī)劃
該模塊集成了百度地圖SDK[2],提供基本地圖、位置搜索、路徑規(guī)劃等數(shù)據(jù)服務(wù),如圖3所示。在此程序中,XML中使用百度地圖控件
1.3 消息管理
1.3.1 交流互動(dòng)
系統(tǒng)中,用戶互動(dòng)交流模塊是集成環(huán)信SDK。用戶使用此功能時(shí)需要使用賬號(hào)在環(huán)信上完成注冊(cè)。用戶注冊(cè)完成后,將發(fā)布者的ID傳入環(huán)信SDK提供的聊天頁(yè)面即可進(jìn)行交流互動(dòng),不過(guò)這屬于陌生人交流。點(diǎn)擊“關(guān)注”,申請(qǐng)加其為好友,當(dāng)對(duì)方同意后,用戶雙方即成為好友,在用戶通信錄里可以查看好友信息。
1.3.2 查看留言
用戶在瀏覽其他用戶發(fā)布的消息后,可以在下方留言,詢問(wèn)相關(guān)內(nèi)容等。同時(shí)用戶也可以查看其他用戶給自己的留言信息,并決定是否回復(fù)等。
1.4 管理員管理
管理員模塊分為用戶賬號(hào)管理和用戶發(fā)布信息管理兩部分。
1.4.1 用戶賬號(hào)管理
管理員一旦發(fā)現(xiàn)用戶發(fā)布涉嫌違反法律法規(guī)、用戶使用條款協(xié)議以及基本道德規(guī)范的內(nèi)容,有權(quán)刪除該用戶賬號(hào)以及其發(fā)布的一切信息。這一功能保證了約伴-出行APP線上互動(dòng)的和諧與穩(wěn)定,也保證了用戶在使用本系統(tǒng)時(shí)能有舒適、愉快的心情。
1.4.2 用戶信息發(fā)布管理
此模塊旨在刪除用戶發(fā)布的不符合規(guī)定的信息,如虛假信息、垃圾信息等。管理員有權(quán)根據(jù)情節(jié)嚴(yán)重程度決定刪除單條信息或者該用戶發(fā)布的所有信息。該功能有效保證了用戶盡可能地獲取系統(tǒng)干凈、有效的信息。
2 數(shù)據(jù)庫(kù)設(shè)計(jì)
良好的數(shù)據(jù)庫(kù)設(shè)計(jì)能夠使系統(tǒng)無(wú)論在效率還是安全性上都得到較大提高[3]。本系統(tǒng)將數(shù)據(jù)庫(kù)規(guī)范模式應(yīng)用到了系統(tǒng)數(shù)據(jù)設(shè)計(jì)中。約伴-出行系統(tǒng)中的數(shù)據(jù)庫(kù)表按照3NF范式建立,一個(gè)數(shù)據(jù)庫(kù)表中不包含已在其他表中已包含的非主關(guān)鍵字信息,以減少數(shù)據(jù)冗余,保證數(shù)據(jù)庫(kù)安全平穩(wěn)運(yùn)行。
由于系統(tǒng)直接連接遠(yuǎn)程數(shù)據(jù)庫(kù),在安全性等方面的性能非常差,因此,本系統(tǒng)數(shù)據(jù)庫(kù)訪問(wèn)采用目前較為流行的Android+PHP+MySQL形式,即訪問(wèn)遠(yuǎn)程服務(wù)器前端的PHP,PHP函數(shù)完成數(shù)據(jù)庫(kù)操作,把結(jié)果經(jīng)過(guò)JSON編碼后傳回,Android端再parse出結(jié)果,這種方式既簡(jiǎn)單又高效。
3 結(jié) 語(yǔ)
約伴-出行系統(tǒng)是一款基于Android操作平臺(tái),旨在為用戶提供線上互動(dòng)、線下結(jié)伴出行服務(wù),使用戶能夠更加方便、舒適出游的應(yīng)用APP。系統(tǒng)整體具有較高的實(shí)用性,但還有許多需要進(jìn)一步完善的地方,有待進(jìn)一步研究探索,以實(shí)現(xiàn)更為實(shí)用、方便的功能。
參考文獻(xiàn)
[1]謝杭,朱鵬羽,孟慶賀.基于安卓平臺(tái)的掌上校園APP的設(shè)計(jì)與開(kāi)發(fā)[J].軟件工程,2016,19(3):24-26.
[2]隆志堅(jiān).Android平臺(tái)基于Google Map Api的導(dǎo)航應(yīng)用技術(shù)研究和實(shí)現(xiàn)[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2011.
[3]于詩(shī)宇,侯祝平.基于Android攜程結(jié)伴系統(tǒng)的設(shè)計(jì)[J].科技創(chuàng)新導(dǎo)報(bào),2014(26):49-50.
[4]楊豐盛.Android應(yīng)用開(kāi)發(fā)揭秘[M].北京:機(jī)械工業(yè)出版社,2010.
[5]郭琳.基于百度地圖Api的Web地圖交互應(yīng)用[J].科技資訊,2017,15(8):36-38.
[6]陳飛,羅文廣.基于Android的智能交互APP設(shè)計(jì)[J].廣西科技大學(xué)學(xué)報(bào),2017,28(2):29-34.
[7]宮永剛,王紅剛.基于Android Resource sharing APP系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù)(學(xué)術(shù)交流),2017(3x):61-62.
[8]廖露陽(yáng),郭兵.基于Android APP安全登錄認(rèn)證解決方案[J].現(xiàn)代計(jì)算機(jī)(中旬刊),2016(12):9-12.