周揚(yáng)帆
摘 ? 要:經(jīng)濟(jì)發(fā)展帶動(dòng)了我國(guó)物流產(chǎn)業(yè)的快速進(jìn)步。在公路物流行業(yè)存在運(yùn)力調(diào)度方面存在環(huán)節(jié)多、匹配難度大等問題。這類問題降低了公路物流產(chǎn)業(yè)的運(yùn)輸效率,不利于物流企業(yè)、貨運(yùn)司機(jī)經(jīng)濟(jì)效益的提升,也占用了物流需求方的時(shí)間成本和經(jīng)濟(jì)成本。為此,筆者設(shè)計(jì)了基于android平臺(tái)的物流交易撮合系統(tǒng),將探討該交易撮合系統(tǒng)中司機(jī)端的設(shè)計(jì)與應(yīng)用。
關(guān)鍵詞:物流 ?訂單匹配 ?Android
中圖分類號(hào):TP316 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1674-098X(2020)05(a)-0068-02
1 ?技術(shù)要素評(píng)述
1.1 Android系統(tǒng)
筆者設(shè)計(jì)的交易系統(tǒng)基于Android操作系統(tǒng)完成。選取該操作系統(tǒng)原因?yàn)椋浩湟?,Android系統(tǒng)開放程度較高,這使得Android操作系統(tǒng)擁有為數(shù)眾多的開發(fā)者和消費(fèi)者用戶。對(duì)于開發(fā)者而言,較大用戶群體可以為開發(fā)帶來更多便利條件。其二,該操作系統(tǒng)對(duì)于移動(dòng)網(wǎng)絡(luò)運(yùn)營(yíng)商沒有特別的要求,運(yùn)行Android操作系統(tǒng)的移動(dòng)設(shè)備可以接入任何可連接的運(yùn)營(yíng)商網(wǎng)絡(luò)。其三,開發(fā)者束縛少?;贏ndroid操作系統(tǒng)開源的特點(diǎn),對(duì)于開發(fā)者沒有過多的開發(fā)要求限制,有利于開發(fā)者完成應(yīng)用設(shè)計(jì)和推廣。
1.2 Android消息推送
Android操作系統(tǒng)完成應(yīng)用消息的推送有兩種技術(shù)模式。其一是輪詢。運(yùn)用輪詢的消息獲取機(jī)制,如果兩次輪詢之間的間隔時(shí)間過長(zhǎng),就會(huì)造成用戶無法及時(shí)獲取應(yīng)用平臺(tái)推送消息的情況。其二是推送。Android操作系統(tǒng)在應(yīng)用信息的推送環(huán)節(jié)尚沒有建立起統(tǒng)一高效的機(jī)制。主要依托SMS方式和TCP/IP長(zhǎng)鏈接方式完成消息的推送。這兩種方式各有優(yōu)勢(shì)和缺點(diǎn)。利用SMS進(jìn)行消息推送會(huì)造成消費(fèi)者費(fèi)用明顯增加,其優(yōu)勢(shì)在與可以最大限度的保證消息推送的及時(shí)性,用戶幾乎可以在消息產(chǎn)生的第一時(shí)間完成獲取。除此之外,SMS在進(jìn)行消息推送的過程中還存在消息內(nèi)容與數(shù)量的限制。
2 ?網(wǎng)絡(luò)通信模塊設(shè)計(jì)
2.1 文本數(shù)據(jù)傳輸
該模塊在系統(tǒng)中的主要任務(wù)為完成數(shù)據(jù)和信息的傳遞工作。具體而言,有兩項(xiàng)工作任務(wù),其一是文本信息的傳遞,其二是二進(jìn)制數(shù)據(jù)的傳遞。
為了完成上述兩項(xiàng)數(shù)據(jù)傳遞工作,筆者在交易系統(tǒng)中選取了谷歌公司的Volley框架系統(tǒng)作為整個(gè)系統(tǒng)的底層依賴包完成信息數(shù)據(jù)的傳輸任務(wù)。該框架提供了json格式數(shù)據(jù)的訪問,開發(fā)者能夠在此基礎(chǔ)上進(jìn)行開發(fā),使網(wǎng)絡(luò)通信流程更加便捷和方便。筆者在該框架的基礎(chǔ)上完成了二次封裝。該框架系統(tǒng)內(nèi)具備:Request Queue,Image Loader,Json Request,Network Response以及Listener。
Volleysingleton:可以在其中對(duì)Request Queue進(jìn)行初始化,并且對(duì)于網(wǎng)絡(luò)上的請(qǐng)求進(jìn)行處理,用Image Loader存儲(chǔ)系統(tǒng)平臺(tái)中緩存的圖片。
Utf8json Object Request:可以對(duì)Request進(jìn)行自定義,并且對(duì)系統(tǒng)上的獲取到的信息進(jìn)行解碼任務(wù),其可以避免文本數(shù)據(jù),特別是中文數(shù)據(jù)在傳輸過程中產(chǎn)生亂碼。
2.2 二進(jìn)制數(shù)據(jù)的傳輸
在筆者設(shè)計(jì)的系統(tǒng)中,對(duì)于二進(jìn)制數(shù)據(jù)的傳輸都是通過Httpurlconnection進(jìn)行實(shí)現(xiàn)。除此之外,運(yùn)用操作系統(tǒng)本身具備的Handler、Message等工具,在設(shè)備終端內(nèi)完成圖片文件、音頻數(shù)據(jù)等傳輸工作。其后,對(duì)于上述流程涉及到的接口,筆者進(jìn)行了接口的封裝工作,封裝過后可以便利的對(duì)該模塊進(jìn)行調(diào)用。
File info:對(duì)于File進(jìn)行定義內(nèi)容,以供在上傳下載數(shù)據(jù)時(shí)進(jìn)行調(diào)用。
Downfile Listener:在該模塊內(nèi)運(yùn)用了Getimage和Getfile兩種方法,以此來實(shí)現(xiàn)向上層平臺(tái)的數(shù)據(jù)傳輸。
Upfilelistener:用于調(diào)用Uploadfile類向上層完成數(shù)據(jù)傳遞與參數(shù)傳遞。
Uploadfile:該模塊主要應(yīng)用于上傳文件數(shù)據(jù)任務(wù),其中主要包含了圖片文件和音頻文件的上傳。
3 ?司機(jī)端應(yīng)用的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)
3.1 登陸模塊
該模塊主要應(yīng)用于物流司機(jī)在移動(dòng)終端上進(jìn)行賬號(hào)的登陸。在該模塊中,主要引入了Oauth 2.0的認(rèn)證機(jī)制,保證賬號(hào)登陸信息安全。在用戶首次登陸的過程中,需要用戶即物流司機(jī)輸入手機(jī)號(hào)碼并且設(shè)定登陸密碼。在該步驟的操作中,服務(wù)器向客戶端發(fā)送兩項(xiàng)參數(shù):Access-Token以及Refresh-Token,與此同時(shí),服務(wù)器將自動(dòng)記錄下用戶輸入的內(nèi)容和相應(yīng)的有效時(shí)長(zhǎng)。用戶在后期登陸時(shí),啟動(dòng)客戶端以后服務(wù)器會(huì)再次自動(dòng)驗(yàn)證Access-Token,如果驗(yàn)證通過,服務(wù)器就會(huì)允許用戶的登陸行為,如果驗(yàn)證不通過,就會(huì)自動(dòng)轉(zhuǎn)到賬戶和密碼的登陸界面,用戶則需要重新進(jìn)行登陸。除此之外,還在登陸模塊中設(shè)定了找回密碼功能,同樣采用驗(yàn)證碼驗(yàn)證的方式進(jìn)行密碼重置。
3.2 注冊(cè)模塊
在注冊(cè)模塊中,該系統(tǒng)采取了手機(jī)號(hào)注冊(cè)的方式。用戶在輸入自己的手機(jī)號(hào)以后,系統(tǒng)服務(wù)器將與第三方信息發(fā)送平臺(tái)協(xié)作發(fā)送驗(yàn)證碼,用戶輸入驗(yàn)證碼以后,服務(wù)器進(jìn)行驗(yàn)證碼核對(duì),如果驗(yàn)證碼正確則允許用戶進(jìn)行注冊(cè),如果驗(yàn)證碼不正確,則拒絕用戶注冊(cè)。在經(jīng)過驗(yàn)證碼驗(yàn)證以后,需要用戶上傳頭像和相關(guān)資格證件、車輛證件,以保證司機(jī)信息的真實(shí)性,保障物流安全。
3.3 接單模塊
該系統(tǒng)在首頁(yè)界面上將根據(jù)物流司機(jī)的車輛運(yùn)載能力信息、位置信息等為物流司機(jī)客戶端推薦訂單,司機(jī)可以自由選擇接單。除此之外,司機(jī)客戶端還設(shè)置了常運(yùn)路線和運(yùn)輸距離限制等條件,系統(tǒng)將根據(jù)物流司機(jī)的設(shè)置為司機(jī)推薦符合司機(jī)本人設(shè)置要求的訂單。
在該模塊的實(shí)現(xiàn)過程中,筆者使用了Setting Activity類,其用于修改或設(shè)定運(yùn)輸范圍和車輛運(yùn)載能力。Getbetween Volumn可以獲取司機(jī)設(shè)置的貨物體積限制,Getbetween Weight獲取車輛運(yùn)載重量限制范圍。
3.4 溝通模塊
溝通模塊主要應(yīng)用于司機(jī)和物流需求方的信息溝通。主要實(shí)現(xiàn)邏輯如下:客戶端在服務(wù)器端獲取最新的消息,服務(wù)器通過群組ID或用戶名稱ID從數(shù)據(jù)庫(kù)中獲得消息,并且發(fā)送到物流司機(jī)客戶端。物流司機(jī)發(fā)送至物流需求方的信息也會(huì)經(jīng)過同樣的過程實(shí)現(xiàn)信息傳遞。完成信息傳遞流程以后,其后可以通過操作系統(tǒng)消息推送路徑實(shí)現(xiàn)消息呈現(xiàn)。
3.5 訂單模塊
在訂單模塊中,物流司機(jī)可以看到自己已經(jīng)接受的訂單,并且所有訂單將按照發(fā)貨前、發(fā)貨中、已完成進(jìn)行分類。在發(fā)貨前,需要物流司機(jī)在客戶端內(nèi)填寫訂單信息,并按“發(fā)貨”按鈕將訂單轉(zhuǎn)入發(fā)貨中類別。在發(fā)貨中,系統(tǒng)將自動(dòng)記錄司機(jī)的運(yùn)輸貨物的動(dòng)態(tài)軌跡,并將路線軌跡實(shí)時(shí)更新至需求方平臺(tái)。在訂單完成后,物流司機(jī)在客戶端內(nèi)選擇已經(jīng)送達(dá),由物流發(fā)貨方和收獲方進(jìn)行訂單確認(rèn)以后,系統(tǒng)直接將資金轉(zhuǎn)入物流司機(jī)綁定的銀行賬戶內(nèi),至此整個(gè)交易流程結(jié)束。
4 ?結(jié)語
該交易撮合系統(tǒng)可以有效的提升公路運(yùn)輸產(chǎn)業(yè)的信息溝通效率,有效促進(jìn)我國(guó)物流產(chǎn)業(yè)信息化、智能化進(jìn)程。
參考文獻(xiàn)
[1] 李向前.基于ios的物流撮合交易系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].北京郵電大學(xué),2018.
[2] 高超.糧食大宗商品電商交易及物流平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[D].天津大學(xué),2018.
[3] 胡堃.基于供應(yīng)鏈的三方物流訂單系統(tǒng)研究與實(shí)現(xiàn)[D].湖南大學(xué),2016.
[4] 尤晶晶.第三方物流交易系統(tǒng)設(shè)計(jì)[J].科技資訊,2010(2):90.