


摘? 要: 為減小因停車問題造成的城市道路交通壓力,有效利用既有停車場資源,本文基于Android操作系統,結合百度地圖API及移動支付,設計了基于Android的城市智能停車App。App采用C/S架構,客戶端使用Android Studio2.4開發平臺,開發了停車場及停車位查詢、停車位預約、停車場導航、停車計費和停車信息記錄等功能;服務器端使用Spring MVC+MyBatis框架,為客戶端各類服務提供有力支持;使用MySQL數據庫管理存儲用戶、停車場、系統等數據。App界面美觀大方、操作簡單、易于使用,極大地提高了停車場資源利用率,方便了廣大司機的短距離出行,提高了人們的生活質量。
關鍵詞: 智能停車;Android開發;C/S架構;APP設計
中圖分類號: TP31 ???文獻標識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.044
本文著錄格式:王蕊. 基于Android的城市智能停車App設計[J]. 軟件,2020,41(07):216-219
Design of City Smart Parking App Based on Android
WANG Rui
(The Third Research Institute of Ministry of Public Security, Shanghai 200031, China)
【Abstract】: In order to reduce the urban road traffic pressure caused by parking problems and effectively use the existing parking lot resources, this article is based on the Android operating system, combined with Baidu Maps API and mobile payment, an Android-based city smart parking app is designed. App uses C/S architecture, client uses Android Studio2.4 development platform, developed functions such as parking lot and parking space inquiry, parking space reservation, parking lot navigation, parking billing and parking information recording; Spring MVC + The MyBatis framework provides powerful support for various services on the client side; the MySQL database is used to manage and store user, parking lot, system and other data. The App interface is beautiful, easy to use, and easy to use, which greatly improves the utilization rate of parking lot resources, facilitates short-distance travel for drivers, and improves peoples life quality.
【Key words】: Intelligent parking; Android development; C/S architecture; APP design
0? 引言
截至2019年6月,全國汽車保有量達2.5億輛[1]。日益增加的汽車數量使“停車難”問題逐漸成為制約我國大中城市發展的“瓶頸”,因為泊車人群在道路上盲目尋找泊位,在一定程度上增加了城市道路交通的負擔,使城市“堵上添堵”,交通負擔越來越重。為方便廣大司機查詢、預定、導航到附近泊位,合理安排停車,有效利用既有停車資源,減少因停車問題而額外附加的交通量,降低相關部門在城市停車場及泊位管理所花費的成本[2-3]。本文利用互聯網+智能停車思維,使用全球移動智能手機系統占有率第一的Android操作系統[4]設計實現了基于Android的城市智能停車App(以下簡稱“智能停車App”)。
1 ?智能停車App的功能與模塊設計
本文采用C/S架構,基于根據面向對象的程序設計思想,遵循“高內聚、低耦合”的設計原則[5]設計了智能停車App。
1.1? App端系統設計
筆者對智能停車App的需求進行了分析,將智能停車App端功能分為:“停車”、“附近”和“我的”三大部分。
(1)“停車”是App端功能的主模塊也是App的入口。“我要停車”、次日續時、快速充值為司機提供查詢、預約泊位車前的快捷、必要服務;停車資訊模塊則是為提升App友好性,幫助司機了解汽車相關資訊信息而設計。“停車”相關界面見圖4。
(2)“附近”是App端功能的核心模塊。可查詢附近停車場及泊位(附近有多少個停車場、有多少泊位,目前還有多少個空位),司機查詢到泊位后進行繳費、預定泊位并生成預定二維碼;為滿足司機多種導航需求,App使用百度地圖API,利用其基于位置服務(LBS)技術,提供“系統推薦、距離最短、花費最少、躲避擁堵”四種方式導航到停車場,為用戶定位、尋找、導航到附近停車場提供便利。“附近”相關界面見圖5。
(3)“我的”是App端功能的個性化模塊。司機可通過“我的錢包”清晰了解賬戶余額及消費情況;“停車記錄”以時間軸形式對司機停車時間、地點、費用等信息進行記錄;投訴建議模塊方便司機朋友反饋使用過程中遇到的問題,從而幫助筆者優化App;版本信息和關于我們兩模塊可為筆者科學管理App版本提供支持。“我的”相關界面見圖8。智能停車App端功能結構見圖6。
使用智能停車App的司機在Android操作系統的手機上,用GPS對當前位置進行定位;司機登錄App查詢自己所要前往目的地附近的停車場及泊位信息,選擇可停靠的停車場并進行泊位預約;取得包含停車時間、泊位號、費用等信息的二維碼,方便用戶進入停車場時驗證泊位;預約成功后,司機可根據需求使用App提供的導航方式進行到停車場前的導航,讓司機能夠更加快捷地到達自己預約的停車場[6-8]。App端主要流程如圖2所示。
1.2 ?服務器端系統設計
服務器端MyEclipse作為編碼工具,使用Spring、Spring MVC、MyBatis等主流Java Web框架進行后臺服務開發。其中Spring MVC的DispatcherServlet截獲所有App端發送的HTTP請求,并根據映射關系將每個請求發送到合適的處理方法,在進行數據處理的過程中,根據需要可將服務器端和客戶端的數據存入MySQL數據庫中進行持久化保存,為管理員對用戶管理、停車場管理和投訴查詢等提供數據支持,確保用戶在查詢、預約泊位時信息的準確、及時,最后使用視圖向客戶端App返回響應結果并在App上展示。服務器端主要流程如圖3所示。
1.3 ?數據庫設計
智能停車App數據庫設計主要涉及到服務器端權限以及資料存儲的實現[9],筆者以停車場和用戶為實體,利用MySQL數據庫設計建立數據模型,將系統各個角色涉及的數據分類存入數據庫,并對數據庫進一步優化[10-11]形成各類數據表。智能停車App中的數據表包括:停車位信息表(carport_info)、停車記錄信息表(carport_record)、投訴信息表(complain)、停車場信息表(depot_info)、角色信息表(sys_role)、用戶信息表(sys_user)和錢包信息表(wallet_info)。停車位信息表結構見表1。
1.4 ?UI設計
智能停車App界面使用谷歌提供的Material Design語言[12]作為界面設計語言,靈活運用Android Studio2.4開發平臺提供的TextView、ImageView、EditView、Button等控件及LenearLayout、Relative?Layout和FrameLayout等布局組件完成界面設計[13]。App部分界面效果圖如圖4、5、6所示。
2 ?總結
本文完成了基于Android的城市智能停車App客戶端、服務器端及數據庫的設計。通過使用智能停車App線上查詢、預訂泊位、導航到停車場等服務,可有效提高停車場基礎設施的利用率、降低泊位空置率,減少駕駛者排隊等候時間,緩解道路交通壓力,具有良好的經濟效益和社會效益[14]。
參考文獻
<!--[if !supportLists]-->[1]?????? <!--[endif]-->中國政府官網. 2019年上半年全國機動車保有量達3. 4億輛. [EB/OL]. (2019-07-04)[2020-03-07]. http://www.gov.cn/ xinwen/2019-07/04/content_5405841.htm.
<!--[if !supportLists]-->[2]?????? <!--[endif]-->陳耀. 城市停車誘導信息系統[D]. 浙江大學, 2013, 1-2.
<!--[if !supportLists]-->[3]?????? <!--[endif]-->羅超. 停車走進智慧新時代[J]. 中國公共安全, 2016, (16): 76-80.
<!--[if !supportLists]-->[4]?????? <!--[endif]-->中國報告大廳官網. 安卓手機市場占有率. [EB/OL]. (2017-09-14) [2020-03-07]. http://m.chinabgao.com/k/shouji/ 29137.html.
<!--[if !supportLists]-->[5]?????? <!--[endif]-->程春蕊, 劉萬軍. 高內聚低耦合軟件架構的構建[J]. 計算
機系統應用, 2009, 18(07): 19-22.
<!--[if !supportLists]-->[6]?????? <!--[endif]-->吳惠惠. 智能停車引導及NFC支付系統的設計與分析[J]. 電子科技, 2015, (8): 122-125.
<!--[if !supportLists]-->[7]?????? <!--[endif]-->李廣宇, 李益樂, 張文亮, 等. 智能停車導航系統構建的必要性及可行性分析[J]. 軟件, 2018, 39(7): 17-23.
<!--[if !supportLists]-->[8]?????? <!--[endif]-->趙一州. 大中型停車場智能泊車導航系統研究[J]. 軟件, 2018, 39(10): 116-120.
<!--[if !supportLists]-->[9]?????? <!--[endif]-->陸相任. 基于Android平臺開發的師生學習交流APP[J]. 軟件, 2018, 39(04): 21-23.
<!--[if !supportLists]-->[10]??? <!--[endif]-->徐安令. SQL Server 數據庫的查詢優化[J]. 軟件, 2014, 35(2): 88-89.
<!--[if !supportLists]-->[11]??? <!--[endif]-->宋紅凱, 杜洪波, 程宇航, 張先卓. 基于“百度地圖”的掌上校車APP設計[J]. 軟件, 2019, 40(05): 21-25.
<!--[if !supportLists]-->[12]??? <!--[endif]-->百度百科. Material Design. [EB/OL]. (2017-05-26) [2020-03- 07]. https://baike.baidu.com/item/Material%20Design/16011141? fr=aladdin.
<!--[if !supportLists]-->[13]??? <!--[endif]-->郭霖. 第一行代碼[M]. (第2版). 人民郵電大學出版社: 陳冰, 2014,: 77-141.
<!--[if !supportLists]-->[14]??? <!--[endif]-->洪桂香. 智慧停車如何緩解停車難[J]. 中國公共安全, 2016, (10): 102-110.