孫貽寶, 王 偉, 陳澤強(qiáng), 2, 王文華
?
基于天地圖的智慧公交移動(dòng)APP設(shè)計(jì)與實(shí)現(xiàn)①
孫貽寶1, 王 偉1, 陳澤強(qiáng)1, 2, 王文華3
1(武漢大學(xué)測(cè)繪遙感信息工程國(guó)家重點(diǎn)實(shí)驗(yàn)室, 武漢 430079)2(地球空間信息技術(shù)協(xié)同創(chuàng)新中心, 武漢 430079)3(武漢吉嘉偉業(yè)科技發(fā)展有限公司, 武漢 430070)
針對(duì)太原市智慧公交系統(tǒng)建設(shè)的需求, 基于天地圖移動(dòng)API和IOS平臺(tái), 研發(fā)了一款智慧公交移動(dòng)APP. APP提供靜態(tài)公交查詢、實(shí)時(shí)公交查詢、周邊公交查詢和公交換乘查詢等公交查詢服務(wù)和周邊興趣點(diǎn)查詢、天氣查詢和交通管理通知公告等增值服務(wù). 解決傳統(tǒng)公交運(yùn)營(yíng)管理不能滿足公眾對(duì)出行信息的需求問(wèn)題, 做到了智慧出行.
智慧公交; 智慧城市; 天地圖; 移動(dòng)APP; 公交查詢
公共交通是城市有機(jī)體的重要組成部分, 是一個(gè)城市競(jìng)爭(zhēng)力和文明程度的重要標(biāo)志. 隨著城市的發(fā)展, 交通問(wèn)題越來(lái)越突出, 深刻影響著市民的日常生活, 城市交通智能化的需要越來(lái)越迫切[1]. 智慧交通作為智慧城市重要組成部分, 對(duì)解決現(xiàn)代都市交通擁堵現(xiàn)象有著非常積極的作用[2]. 公共交通出行是當(dāng)今社會(huì)最重要的出行方式之一, 也是各大城市為緩解城市交通擁堵而主推的出行方式[3]. 然而, 社會(huì)公眾對(duì)公共交通服務(wù)水準(zhǔn)要求日益提高, 傳統(tǒng)的公共交通運(yùn)營(yíng)管理, 漸漸不能滿足公眾對(duì)掌握出行信息的需求. 公共交通的信息化建設(shè), 尤其是智慧公交的建設(shè)成為大勢(shì)所趨[4-6]. 熊偉等從提高公交運(yùn)營(yíng)效率以緩解北京公共交通壓力角度出發(fā), 分析探討了北京市智慧公交平臺(tái)的建設(shè)[4]; 白雪飛針對(duì)傳統(tǒng)公交信息查詢系統(tǒng)缺少實(shí)時(shí)公交信息的問(wèn)題, 結(jié)合靜態(tài)公交數(shù)據(jù)和實(shí)時(shí)公交數(shù)據(jù), 研發(fā)了基于IOS的智能公交系統(tǒng)[5]; 羅在文在瀘州市的公交系統(tǒng)現(xiàn)狀基礎(chǔ)上結(jié)合流行的Android平臺(tái)研發(fā)了移動(dòng)智能公交查詢系統(tǒng)[6].
針對(duì)建設(shè)智慧城市中智慧公交系統(tǒng)的需求, 以太原市為例, 基于天地圖移動(dòng)API和IOS平臺(tái), 設(shè)計(jì)和開(kāi)發(fā)的智慧公交移動(dòng)APP, 是智慧公交系統(tǒng)的組成部分, 為用戶出行提供詳盡的公交信息. 智慧公交移動(dòng)APP對(duì)其他城市智慧公交系統(tǒng)的建設(shè)也有一定的參考價(jià)值.
1.1 IOS移動(dòng)應(yīng)用開(kāi)發(fā)
IOS移動(dòng)應(yīng)用是利用IOS API開(kāi)發(fā)的, 運(yùn)行于IOS系統(tǒng)的應(yīng)用程序, 所以有必要了解IOS平臺(tái)及其相關(guān)API. IOS整體架構(gòu)分為4層, 分別是Cocoa Touch層、Media層、Core Services層和Core OS層.
Cocoa Touch層: 該層位于整個(gè)架構(gòu)最上, 提供了構(gòu)建IOS應(yīng)用的一些基本服務(wù)(如多任務(wù)、觸摸輸入和推送通知等)和關(guān)鍵框架(表1).
表1 Cocoa Touch層主要框架及說(shuō)明
Media層: 該層提供了圖形、音頻、視頻等多媒體技術(shù)和AirPlay技術(shù)支持, 主要框架如表2所示.
表2 Media層主要框架及說(shuō)明
Core Services層: 該層提供了iCloud、應(yīng)用內(nèi)購(gòu)買、SQLite數(shù)據(jù)庫(kù)和XML等技術(shù)支持, 包括的主要框架如表3所示.
表3 Core Services層主要框架及說(shuō)明
Core OS層: 該層位于整個(gè)架構(gòu)最底層, 提供系統(tǒng)底層功能, 開(kāi)發(fā)中一般不直接使用, 包含的主要框架見(jiàn)表4.
表4 Core OS層主要框架及說(shuō)明
1.2 天地圖移動(dòng)API
天地圖移動(dòng)API(IOS)V2.2是一套基于IOS 5.0及以上版本的應(yīng)用程序接口, 具有接口完備、地圖覆蓋全球和定位方式多樣等特點(diǎn)[7], 提供了構(gòu)建地圖的基本接口和服務(wù)接口, 下面簡(jiǎn)要介紹這些接口的功能.
1) 地圖顯示: 在移動(dòng)地圖應(yīng)用中顯示地圖數(shù)據(jù), 包括覆蓋全球的矢量地圖和影像地圖; 同時(shí)還內(nèi)置了常規(guī)的地圖交互功能, 如地圖平移、旋轉(zhuǎn)、放大和縮小等.
2) 覆蓋物: 用戶為了特定應(yīng)用自行添加到地圖上的對(duì)象統(tǒng)稱為覆蓋物, 如自定義的點(diǎn)狀、線狀、面狀標(biāo)注, 這滿足了特定應(yīng)用的個(gè)性化需求.
3) 離線地圖: 用戶可以在線下載地圖數(shù)據(jù)包, 在離線的情況下依然可以使用地圖數(shù)據(jù), 這可以提高地圖的瀏覽速度、減少流量.
4) POI搜索: 基于海量地名智能搜索引擎, 可以根據(jù)關(guān)鍵字搜索、周邊搜索和視野內(nèi)搜索.
5) 定位服務(wù): 有GPS、網(wǎng)絡(luò)等多種定位方式, 通過(guò)定位服務(wù)可以獲取用戶位置和移動(dòng)方向.
6) 逆地理編碼: 逆地理編碼即地址解析, 指經(jīng)緯度坐標(biāo)與地址描述相互轉(zhuǎn)換. 天地圖移動(dòng)API逆地理編碼服務(wù), 具有地址豐富, 內(nèi)容全面, 信息準(zhǔn)確的特點(diǎn).
7) 公交搜索: 提供城市公共交通信息的查詢服務(wù), 可以根據(jù)線路查詢, 也可以根據(jù)站點(diǎn)名關(guān)鍵字查詢.
8) 自駕規(guī)劃: 自駕規(guī)劃指駕車路線查詢, 天地圖提供全國(guó)范圍內(nèi)駕車路線查詢服務(wù), 擁有多種規(guī)劃方式.
9) 公交規(guī)劃: 公交規(guī)劃指公交換乘查詢, 天地圖提供4種公交路線規(guī)劃服務(wù), 方便用戶出行.
2.1 APP架構(gòu)設(shè)計(jì)
在IOS平臺(tái)中, 分層架構(gòu)設(shè)計(jì)有多種模式: 基于同一工程的分層、基于一個(gè)工作空間不同工程的分層和靜態(tài)鏈接庫(kù)分層[8]. 智慧公交移動(dòng)APP采用基于一個(gè)工作空間不同工程的分層. APP劃分為查詢、周邊、換乘、服務(wù)和更多五個(gè)業(yè)務(wù)模塊. 模塊之間功能松耦合, 具有一定獨(dú)立性, 從而可以將每個(gè)模塊設(shè)置為獨(dú)立的工程, 并且各個(gè)模塊工程遵循通用MVC分層架構(gòu). 查詢模塊主要實(shí)現(xiàn)靜態(tài)公交查詢和實(shí)時(shí)公交查詢功能; 周邊模塊實(shí)現(xiàn)周邊公交查詢功能, 與查詢模塊有交互; 換乘模塊實(shí)現(xiàn)公交換乘查詢功能; 服務(wù)模塊實(shí)現(xiàn)周邊興趣點(diǎn)查詢功能; 更多模塊主要實(shí)現(xiàn)系統(tǒng)設(shè)置功能.
2.2 APP功能設(shè)計(jì)
智慧公交移動(dòng)APP致力于為用戶搭乘公共交通出行提供一體化智能解決方案. 通過(guò)該APP, 用戶不但可以獲取公交線路站點(diǎn)信息、公交車到站信息、周邊公交信息和公交換乘信息, 還可以獲取一些輔助出行信息, 如周邊興趣點(diǎn)信息和天氣信息. 根據(jù)以上思路, 系統(tǒng)主要功能有公交查詢(靜態(tài)公交查詢、實(shí)時(shí)公交查詢、周邊公交查詢和公交換乘查詢等)和增值服務(wù)(周邊興趣點(diǎn)查詢、天氣查詢和交通管理通告等), 功能結(jié)構(gòu)如圖1所示.
圖1 系統(tǒng)功能結(jié)構(gòu)圖
1) 靜態(tài)公交查詢: 實(shí)現(xiàn)公交線路和途徑站點(diǎn)等靜態(tài)數(shù)據(jù)的查詢. 通過(guò)靜態(tài)公交查詢用戶可以獲取任一公交線路途徑站點(diǎn)信息(根據(jù)線路查詢)或者經(jīng)過(guò)某一站點(diǎn)的所有公交線路信息(根據(jù)站點(diǎn)查詢).
2) 實(shí)時(shí)公交查詢: 獲取某一公交線路所有車輛實(shí)時(shí)軌跡信息(經(jīng)緯度、行車速度和行車方向等). 通過(guò)實(shí)時(shí)公交查詢用戶可以獲取關(guān)注的公交距離當(dāng)前站點(diǎn)幾站以及到站時(shí)間估計(jì).
3) 公交換乘查詢: 提供任意兩地之間的乘車方案, 輔助用戶出行決策. 通過(guò)公交換乘查詢, 用戶可以獲取可行的乘車方案從而選擇適合出行路線.
4) 周邊公交查詢: 查詢用戶周邊所有公交站點(diǎn)以及經(jīng)過(guò)這些站點(diǎn)的公交線路.
5) 周邊興趣點(diǎn)查詢: 查詢用戶周邊的政府機(jī)構(gòu)、學(xué)校、銀行、餐館等用戶感興趣的位置點(diǎn).
6) 天氣查詢: 獲取天氣情況.
7) 交通管理通告: 實(shí)現(xiàn)交通管理通告推送.
3.1 靜態(tài)公交查詢
靜態(tài)公交數(shù)據(jù)指一般不隨時(shí)間變化的數(shù)據(jù), 如公交線路站點(diǎn)數(shù)據(jù). 靜態(tài)公交查詢分為根據(jù)線路查詢和根據(jù)站點(diǎn)查詢. 根據(jù)線路查詢指用戶輸入查詢線路, 系統(tǒng)通過(guò)精確查詢返回該線路上下行公交途徑站點(diǎn)信息; 根據(jù)站點(diǎn)查詢指用戶輸入站點(diǎn)關(guān)鍵字, 系統(tǒng)通過(guò)模糊查詢返回途徑該站點(diǎn)的所有公交線路. 查詢返回的公交數(shù)據(jù)以TableView表格和地圖標(biāo)注的方式展示給用戶. 靜態(tài)公交查詢功能與實(shí)現(xiàn)流程如圖2所示.
3.2 公交換乘查詢
通過(guò)公交換乘查詢可以獲取任意兩地之間的乘車方案. 首先用戶通過(guò)輸入關(guān)鍵字或者地圖選點(diǎn)的方式輸入起止點(diǎn)信息, 然后系統(tǒng)以起止點(diǎn)信息為參數(shù)向服務(wù)器發(fā)起HTTP請(qǐng)求獲取換乘方案信息, 查詢返回的換乘方案數(shù)據(jù)以TableView表格和地圖標(biāo)注的方式展示給用戶. 公交換乘查詢功能與實(shí)現(xiàn)流程如圖3所示.
3.3 周邊興趣點(diǎn)查詢
周邊興趣點(diǎn)查詢功能首先要解決興趣點(diǎn)分類的問(wèn)題. 系統(tǒng)在突出常用的政府機(jī)關(guān)、事業(yè)單位和景點(diǎn)的基礎(chǔ)上將興趣點(diǎn)分類為餐飲、醫(yī)療、娛樂(lè)、銀行和媒體等幾大類. 餐飲又細(xì)分為快餐、餐館和大型酒樓; 醫(yī)療細(xì)分為藥店、診所和動(dòng)物醫(yī)院; 娛樂(lè)細(xì)分為運(yùn)動(dòng)、洗浴和娛樂(lè)中心; 銀行細(xì)分為ATM、郵儲(chǔ)和金融公司; 媒體細(xì)分為廣電、傳媒和新聞出版.
周邊興趣點(diǎn)查詢功能根據(jù)興趣點(diǎn)的分類方案設(shè)置各個(gè)類別的查詢關(guān)鍵字. 在用戶點(diǎn)擊查詢類別時(shí)將相應(yīng)關(guān)鍵字和定位獲取的用戶位置作為請(qǐng)求參數(shù)發(fā)起HTTP請(qǐng)求, 從而獲取周邊興趣點(diǎn)數(shù)據(jù), 最后通過(guò)TableView表格和地圖標(biāo)注的方式展示給用戶. 周邊興趣點(diǎn)查詢功能與實(shí)現(xiàn)流程如圖4所示.
圖2 靜態(tài)公交查詢功能與流程圖
圖3 公交換乘查詢功能與流程圖
圖4 周邊興趣點(diǎn)查詢功能與流程圖
針對(duì)智慧公交系統(tǒng)建設(shè)的需求, 設(shè)計(jì)和開(kāi)發(fā)的智慧公交移動(dòng)APP, 具有如下建設(shè)意義:
1) 是智慧公交系統(tǒng)的組成部分. 智慧公交作為智慧城市重要組成部份, 對(duì)解決現(xiàn)代都市交通擁堵現(xiàn)象有著非常積極的作用.
2) 健全出行信息發(fā)布體系. 通過(guò)信息發(fā)布和精準(zhǔn)的車輛信息, 為出行者提供信息服務(wù), 便于出行者合理安排時(shí)間, 提升時(shí)間效率.
3) 提升公交企業(yè)以及城市的名片效應(yīng). 通過(guò)對(duì)交通樞紐及公交站亭的智能化建設(shè)和改造, 有利于向社會(huì)公眾提供良好的交通信息服務(wù), 提高城市和企業(yè)知名度.
智慧公交移動(dòng)APP具有一定實(shí)用性, 論文介紹了APP的設(shè)計(jì)與實(shí)現(xiàn), 隨著應(yīng)用的深入和需求的變化, 需要進(jìn)一步完善.
1邵源,宋家驊.大城市交通擁堵管理策略與方法——以深圳市為例.城市交通,2010,8(6):1–7.
2 李德仁,姚遠(yuǎn),邵振鋒.智慧城市的概念、支撐技術(shù)及應(yīng)用.工程研究——跨學(xué)科視野中的工程,2012,4(4):313–323.
3 陳俊勵(lì),馬云龍,朱楠.基于巢式logit模型的公交出行方式選擇行為研究.交通運(yùn)輸系統(tǒng)工程與信息,2011,11(1):120–125.
4 熊偉,陳柏松,付卓等.北京市智慧公交建設(shè)探析.測(cè)繪與空間地理信息,2013,36(5):140–142.
5 白雪飛.基于IOS的智能公交信息服務(wù)系統(tǒng)的研究[碩士學(xué)位論文].北京:北京郵電大學(xué),2014.
6羅在文.基于移動(dòng)智能平臺(tái)的公交查詢系統(tǒng)[碩士學(xué)位論文].成都:電子科技大學(xué),2015.
7 劉貝玲,齊華,曹振宇,等.基于天地圖的移動(dòng)租房軟件設(shè)計(jì)與實(shí)現(xiàn).地理信息世界,2015,22(3):62–67.
8 關(guān)東升.IOS開(kāi)發(fā)指南:從零基礎(chǔ)到APP上架.北京:人民郵電出版社,2013.
Design and Implementation of Intelligent Bus Mobile App Based on Tianditu
SUN Yi-Bao1, WANG Wei1, CHEN Ze-Qiang1, 2, WANG Wen-Hua3
1(State Key Laboratory of Information Engineering in Surveying Mapping and Remote Sensing, Wuhan University, Wuhan 430079, China)2(Collaborative Innovation Center of Geospatial Technology, Wuhan 430079, China)3(Wuhan Gaeaway Science and Technology Development Limited Company, Wuhan 430070, China)
Aimed at the requirement of intelligent transport system construction in Taiyuan, based on Tianditu mobile API and IOS platform, this article designes a mobile application named Intelligent Bus Mobile Application System. The system provides city bus query services and value-added services. City bus query services such as static bus information query, real time bus information query, nearby bus information query, bus transfer information query, etc., value-added services like POI query, weather query and traffic management notice, etc. This solves the problem that public is unsatisfied with the travel information provided by traditional public transportation management system and makes it real smart travel.
intelligent bus; smart city; Tianditu; mobile application; bus information query
2016-06-18;
2016-07-25
[10.15888/j.cnki.csa.005643]