基于Android开发的车联网APP设计
作者:肇宇飞 娄宝文 王翔
来源:《山东工业技术》2016年第18期
        摘 要:目前,人们对于车的使用和依赖越来越严重,并且随着人们的生活质量不断提高,节奏的不断加快,人们对于爱车的管理也越来越迫切。“互联网+”形式的而出现进一步促进了互联网与车的整合,“车联网”也随之开发和发展,因此,用户对“车联网”移动应用软件的需求也越来越大。开发一个“车联网”移动应用软件是十分有必要的。本系统基于Android系统开发一个车载移动应用软件,实现对自身汽车的各项智能化管理,简化了人们维护爱车的时间和精力,极大地方便了人们的生活。
        关键词:车联网;Android;移动应用
        DOI:10.16640/jki.37-1222/t.2016.18.116
        1 背景介绍
        伴随着移动传感器技术、物联网技术和互联网技术的发展,智能交通技术渐渐地被人们重视起来,成为各领域关注和研究的重点,尤其是在欧美等交通发达国家,智能交通技术已经大规模实现运营。智能交通技术已经在视频识别算法、系统平台、交通信号控制、网络配套等相关技术和设施上达到了一个较高的标准。然而车辆本身作为最根本、最基础的信息源,还没有有效地实现车与车、车与人之间的通信,综上所述智能交通要想向更高层次发展,车联网是其将来发展的必然趋势。
        2 系统分析
        2.1 需求分析
        随着人们生活水平的不断提高,汽车成为了人们生活中必不可少的交通工具。但是人们的生活节奏也不断加快,很多时候无暇顾及车辆的维护等,车辆实现智能化势在必行。我们可以开发一款移动应用软件,来帮助管理人们的爱车,例如可以实现对车辆的各种信息进行实时监测,发生异常报错,还可以预约加油,实现加油站的无人化工作。具体实现功能如下:
        (1)注册,登陆,个人信息。(2)可预约加油。(3)地图实时显示当前汽车位置,并显示周围的加油站。(4) 根据路况选择路线。(5)维护车辆信息。(6)开车时可听音乐。(7)交通违章信息
        2.2 功能分析
        本应用软件按照功能可分为7个功能模块。其中功能模块的具体说明如下:汽车手机
        (1)注册,登陆,个人信息模块:该模块主要负责用户的信息注册、登陆和维护用户个人信息等功能。
        (2)预约加油模块:A:绑定一个汽车信息 (个人可有多辆汽车)。B:含有姓名,时间,加油站,加油类型,加油数量(升或金额)等信息。
        C:把数据发送给服务器并存储,生成二维码。此预约订单在APP显示二维码,以便去加油站扫码加油。(此功能只做模拟,不用去加油站实现,但二维码必须含有预约加油的相关信息。)D:APP可查看提交后的预约订单详情 。
        (3)地图定位及显示模块:A:以手机为载体作为汽车,实时更新当先位置。B:并显示周围的加油站和显示加油站相关信息
        (4)导航模块:A:起始点为:可输入地址或当前位置。B:目的地:可输入地址。C:起始和目的地可互换。D:给予最优线路,并可实时告知当前位置。
        (5)维护车辆信息模块: A:可维护多辆个人汽车。B:假设汽车屏幕可提供此车辆当前信息的二维码,可供。用户扫码,APP可扫码并把个人汽车信息维护到手机里面。C:信息包含:汽车品牌、标志、型号、车牌号码、发动机号、车身级别(几门几座)、里程数、汽油量(%)、发动机性能(好、异常)、变速器性能(好、异常),车灯(好、坏)。D:汽车信息也需要维护到服务器端的数据库里。E: 要求把以下通知及时推送到手机端a. 当服务器端的数据库里记录的汽油量少于20%时,给手机发送通知告诉汽车车主该去加油b. 当服务器端的数据库里记录的里程数每超过15000公里倍数时,给手机发送通知告诉汽车车主需要进行维护。c. 当服务器端的数据库里记录的发动机出现异常、变速器出现异常或车灯有坏的时候,给手机发送通知告诉汽车车主需要进行维修
        (6)音乐模块: A:进入APP的时候,音乐自动播放。B:出APP的时候,音乐结束。
C:音乐轮播。D:请选项合适的音乐。
        (7)交通违章信息模块。
        3 数据库分析与设计
        (1)数据库分析。本系统数据库共有四张表:
        cardog:汽车状态信息表
        infocar:汽车信息表
        oil:汽车加油信息表
        user:用户信息表
        (2)数据库概念设计。a)汽车状态信息包括:汽车油量、汽车发动机状态、汽车车灯状态、汽车变速器状态、汽车公里数。b)汽车信息表包括:车牌号、级别、品牌、发动机号、型号、所有者。c)油量信息表包括:ID号、数量、金额、加油站、加油时间、汽油类
型、单价、用户ID。d)用户信息表包括:用户ID、年龄、IP地址、名字、、密码、性别。
        4 系统详细实现
        4.1 系统各模块详细设计:
        (1)注册,登陆,个人信息:通过get方式向服务器传输信息,登陆向服务器发送验证信息返回验证结果(2)可预约加油:在手机端下订单,通过http方式传输到后台,然后在服务器为订单生成订单编号,并在服务器生成一张二维码,以订单便后命名的jpg文件。(3)地图实时显示当前汽车位置,并显示周围的加油站:调用百度地图api,通过解析聚合数据的json接口,在电子地图上标识加油站的位置。
        (4)车辆导航:输入起点、终点后,选择经过智能匹配的起点、终点的精确地址,即可自动规划起点、终点之间的路线。(5)维护车辆信息:扫描车辆信息的二维码,解析数据在手机端展示,并且可以和用户关联。(6)开车时可听音乐:启动app的时候在后台启动一个service,用service管理,Android MediaPlayer 控件实现音乐播放的功能。也可以通过
控制界面选中相应歌曲进行播放。(7)交通违章信息:调用违章查询的web接口,在android上用webview展示。
        4.2 系统开发环境
        本车载APP系统的具体开发环境如下:(1)系统开发平台:Eclipse+ADT。(2)数据库管理系统软件:MySQL。(3)服务器:Tomcat。
        5 讨论与展望
        本软件使用了三个关键技术:(1)二维码:利用二维码生成zxing包生成二维码。(2)调用API:调用百度地图等API接口。(3)无线通信技术:http协议。
        6 总结与体会
        本软件用户体验良好,能基本实现对车的智能联网管理,用户界面简洁易于操作,性能稳定,运行良好,能够帮助车主很好地管理爱车,简化了汽车维护,为车主节省很多的时间。不过此软件目前还有一些功能需要完善,例如增加第三方支付功能,最后实现加油站的无人化和智能化。