【摘要】本系統(tǒng)實現(xiàn)了通過智能手機(jī)實現(xiàn)出租車叫車的功能,主要功能包括用戶提出叫車申請,查看司機(jī)位置;司機(jī)查看乘客位置,確認(rèn)搭載乘客及導(dǎo)航服務(wù);管理員對乘客信息及司機(jī)信息的操作及維護(hù)等。本軟件還提供了特殊事件申請這一功能,使用戶擁有一個發(fā)布緊急申請的平臺,幫助用戶及時快捷的解決問題。
【關(guān)鍵詞】電子地圖;智能手機(jī);出租車
1.引言
電子地圖,即數(shù)字地圖,是利用計算機(jī)技術(shù),以數(shù)字方式存儲和查閱的地圖。電子地圖儲存資訊的方法,一般使用向量式圖像儲存,地圖比例可放大、縮小或旋轉(zhuǎn)而不影響顯示效果。ArcGIS產(chǎn)品線為用戶提供一個可伸縮的,全面的GIS平臺。ArcObjects包含了大量的可編程組件,從細(xì)粒度的對象到粗粒度的對象,涉及面極廣,這些對象為開發(fā)者集成了全面的GIS功能。Android操作系統(tǒng)最初主要支持手機(jī),如今,隨著android操作系統(tǒng)的發(fā)展,智能機(jī)的普及率大大提高。但是市面上很多應(yīng)用程序的同質(zhì)化的現(xiàn)象越來越明顯,且缺乏實用性。因此,我們本著實用和便民的原則,從用戶需求出發(fā),設(shè)計本軟件。
本軟件以百度地圖的api為基礎(chǔ),利用其整合的ArcGIS服務(wù),并在其基礎(chǔ)上進(jìn)行了二次開發(fā),且添加了許多人性化的功能。
本軟件的主要功能是針對乘客用手機(jī)客戶端叫出租車,出租車司機(jī)進(jìn)行響應(yīng),確定搭載乘客,乘客等待一段時間后,可以二次叫車;乘客和司機(jī)可以利用客戶端查詢自己所在的地址;另外針對緊急情況的乘客我們設(shè)置的特殊標(biāo)志,用戶可以簡單在相應(yīng)位置填寫緊急申請原因,軟件便會自動顯示此消息為緊急事件申請,司機(jī)將會對此類申請優(yōu)先考慮搭載;本軟件充分考慮到司機(jī)和乘客外出時要受天氣影響,于是我們添加了天氣查詢功能,便于用戶出行。
由于資金、時間等問題,目前本軟件還有一些不足,不能實現(xiàn)用戶之間的實時通訊。我們會在以后進(jìn)行改進(jìn)和添加。
2.系統(tǒng)架構(gòu)
從圖1所示的框圖可以看出本系統(tǒng)共分為三部分:乘客端、司機(jī)端、管理員端。乘客端主要是為乘客提供一個平臺,實現(xiàn)叫車、定位、查詢等功能;司機(jī)端則方便司機(jī)查詢、定位等;管理員端是用來對乘客和司機(jī)的管理,信息維護(hù)等。
本系統(tǒng)中包含的表以及每張表的詳細(xì)結(jié)構(gòu)此處省略
2.1 乘客端功能包括
(1)用戶定位:點擊定位按鈕,系統(tǒng)將對用戶所在位置進(jìn)行查找,顯示當(dāng)前位置。
(2)查詢附近出租車:點擊查詢附近出租車按鈕,系統(tǒng)將會顯示附近的出租車所在位置。
(3)叫車服務(wù):點擊叫車服務(wù)按鈕,系統(tǒng)將會出現(xiàn)提示,用戶按照提示進(jìn)行操作,實現(xiàn)叫車服務(wù)。
(4)特殊事件申請:如有特殊事件,可以點擊特殊事件按鈕,在相應(yīng)位置填寫申請原因,這種申請將會以特殊符號顯示出來。
(5)天氣查詢:本系統(tǒng)提供天氣查詢功能,對于乘客和司機(jī)都會帶來出行的方便。
(6)公交查詢:系統(tǒng)提供公交查詢功能,為人們出行提供方便。
(7)用戶信息修改:用戶可以對自己的個人信息進(jìn)行修改。
2.2 司機(jī)端功能包括
(1)用戶定位:司機(jī)可以點擊定位按鈕,確定自己所在位置。
(2)查詢附近乘客:司機(jī)點擊查詢附近乘客按鈕可以查找附近要坐車的乘客。
(3)確認(rèn)搭載乘客服務(wù):司機(jī)確定搭載乘客時,點擊確認(rèn)搭載,信息上傳。乘客端有響應(yīng)。
(4)特殊事件申請及處理:對于乘客的特殊申請,司機(jī)可以做出響應(yīng)回應(yīng)。
2.3 管理員端功能包括
(1)提出申請的乘客位置信息及司機(jī)位置信息的顯示。
(2)向司機(jī)通知乘客位置。
3.主要問題實現(xiàn)
本軟件利用百度地圖api,并在其基礎(chǔ)上進(jìn)行了二次開發(fā)。具體問題實現(xiàn)如下:
(1)定位功能:使用手機(jī)的GPS或者通過基站定位等方式實現(xiàn)。由于百度地圖api中內(nèi)置了相應(yīng)的接口,使用時稍加更改后直接調(diào)用。
(2)叫車功能:當(dāng)乘客使用叫車功能時,系統(tǒng)會自動判斷乘客所在位置并將坐標(biāo)轉(zhuǎn)化為地址信息作為出發(fā)點。乘客也可選擇地圖上的點作為出發(fā)點。從地圖上選點時,點擊地圖上一點,通過百度地圖api可獲取此點的經(jīng)緯度信息,并可通過轉(zhuǎn)化變?yōu)樵擖c的地址信息。乘客選擇完出發(fā)點和目的地,點擊確認(rèn)叫車后,乘客的出發(fā)點,目的地以及其他相關(guān)信息將會上傳到服務(wù)器上。
(3)搭載乘客功能:司機(jī)通過點擊查詢按鈕,軟件將從服務(wù)器上搜索附近的叫車信息,并將乘客位置顯示在地圖上,司機(jī)點擊地圖上乘客的標(biāo)記,將彈出對話框,顯示乘客的相關(guān)信息并選擇是否搭載。
(4)特殊事件申請與響應(yīng)功能:該功能是本軟件的亮點,用戶將自己發(fā)生的應(yīng)急事件寫下并提交后,便可將用戶的信息及申請內(nèi)容發(fā)布到服務(wù)器上,當(dāng)人們查看乘客信息或者司機(jī)信息時,應(yīng)急事件的標(biāo)記也會顯示在地圖上,附近的用戶看到后,便可給予幫助。
(5)開發(fā)環(huán)境:本軟件的乘客端與司機(jī)端使用Eclipse作為開發(fā)環(huán)境。Eclipse是一個開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺。就其本身而言,可用于通過插件組件構(gòu)建開發(fā)環(huán)境。
管理員端為B/S結(jié)構(gòu)。使用jsp為開發(fā)語言。使用MyEclips為開發(fā)環(huán)境。
(6)數(shù)據(jù)庫實現(xiàn):本軟件使用sqlserver 2005數(shù)據(jù)庫,使用jdbc鏈接數(shù)據(jù)庫。乘客端,司機(jī)端及管理員端都可以調(diào)用數(shù)據(jù)庫信息實現(xiàn)相關(guān)功能,并在操作后及時將相關(guān)信息上傳到數(shù)據(jù)庫,保證信息的及時準(zhǔn)確。
4.軟件的主要特色
軟件實現(xiàn)了乘客通過手機(jī)發(fā)出叫車申請,司機(jī)通過手機(jī)搭載乘客的功能。之前的叫車申請多為電話預(yù)約,而如今智能手機(jī)普及的今天,使用智能手機(jī)解決這一問題將會為用戶提供更加便捷的服務(wù)。用戶只需打開本軟件,定位后提出叫車申請,空閑的出租車司機(jī)便會看到乘客提出的申請及位置,這樣便會使叫車變得很容易且可以使司機(jī)更快捷的看到乘客的位置。軟件還設(shè)置了管理員端,管理員將乘客的位置通過設(shè)備傳送給司機(jī),并可以直觀的看到乘客的集中分布,為司機(jī)提供搭載建議。
軟件的另一大特色便是應(yīng)急事件處理,當(dāng)用戶遇到難以解決的問題時,可以發(fā)布求助申請,附近用戶可在相應(yīng)的設(shè)備上看到相關(guān)信息,并給予幫助。這樣解決了突發(fā)事件的處理速度。
5.結(jié)束語
本軟件通過對百度地圖api的二次開發(fā),以其功能為基礎(chǔ),有效的解決了目前人們打車難的問題,克服了以往類似軟件或者電話叫車軟件的不足。使用本軟件,不但能節(jié)省乘客時間還可以減少出租車的損耗,提高對資源的利用率,并可以幫助他們解決問題,促進(jìn)社會的和諧與穩(wěn)定。
軟件界面設(shè)計簡單易操作,美觀大方,適合各種人群的使用,并可在后期根據(jù)實際情況,添加新的人性化功能,方便人們的出行。
參考文獻(xiàn)
[1]張利國,龔海平,王植萌.Android移動開發(fā)入門與進(jìn)階[M].人民郵電出版社.
[2]Bruce Eckel,Prentice Hall PTR.Thinking in Java[M].機(jī)械工業(yè)出版社.
[3]龐麗娜.詳解JavaSE應(yīng)用開發(fā)技術(shù)詳解[M].北京科海電子出版社.
[4]張海藩.軟件工程導(dǎo)論[M].清華大學(xué)出版社.
[5]張明麗,王斌,劉瑩.SQL Server2005數(shù)據(jù)庫系統(tǒng)開發(fā)完全手冊[M].人民郵電出版社.