网站首页  词典首页

请输入您要查询的论文:

 

标题 基于Android的行车助手APP的设计和实现
范文

    张晓艳 孙天宇 孙逊

    摘 要:经济的发展使得车辆保有量不断增加,汽车已经成为当今社会极为普遍的出行工具。国内车辆多、行人多,道路交通状况复杂,因此,提高行车安全是交通出行的首要原则。文章设计和实现了一个基于Android的行车助手APP,该APP除了常规行车过程视频录制和分享功能外,还实现了高架出入口、洗手间和加油站提示等常用地址导航等功能。

    关键词:Android;行车助手;行车记录;导航

    經济水平的提高和信息技术的发展使得国内交通运输业取得了快速发展[1],汽车已经逐渐成为人们主要的出行工具。但由于国内道路状况复杂,机非混行、人车混行现象极为常见,而伴随着汽车数量的不断增加,交通事故发生率也在大幅攀升。在事故发生后,保存交通事故现场图片和视频等多媒体资料对事后分析、责任认定具有重要意义。

    目前,硬件行车记录仪市场繁荣,品牌丰富,但许多记录仪存在功能单一、布线繁琐和价格昂贵等缺点。现在应用市场中也有较多基于Android操作系统的行车辅助类APP,功能各有侧重,如刘宽等[2]开发的行车记录仪具有行车视频录制、音乐播放的功能,段永成等[3]在行车记录仪视频处理中实现了去雾算法,岳晓庆[4]开发的行车服务助手具有拨打电话、定位等功能。

    Android于2007年11月由Google公司推出,是一个基于Linux系统的开源移动操作系统。Android操作系统最大的优势在于平台的开放性,开源的代码也使其拥有更多的开发者,使其成为目前受欢迎的手机操作系统[5]。许多行车辅助APP选择基于Android开发,是因为其易与多数手机匹配,平台开放性高。

    本文针对现有常见硬件行车记录仪和行车辅助类APP存在的问题,设计和实现了一套基于Android系统的行车助手APP。该APP除了硬件行车记录仪视频录制等功能外,还实现了视频分享、常用地址一键导航等功能。用户可在闲置的Android手机中部署行车助手APP,可以提高闲置资源的再利用率,也节约了用户资金。

    1 系统设计

    1.1 模块设计

    系统模块设计之初,分别从驾驶员角度、交通管理部门角度考虑用户需求,并结合交通法规、道路分类、常见交通场景、事故种类及发生原因等因素,调研了大量不同驾龄的驾驶员,充分研究了《中华人民共和国道路交通安全法》的各项条例,从交通管理部门查阅了多项事故案例、处理过程和处理结果。在收集了足够数量的数据后,以符合国内交通现状、依法依规行驶、尊重驾驶习惯为前提,基于人、车、管理等角度进行分析,得出系统整体模块结构。

    该行车助手APP分成行车记录、行车记录分享、行车导航和系统设置4个一级模块,一级模块下共设有9个二级模块。

    (1)行车记录模块:该模块包含的二级模块为行车图片拍摄、行车视频循环录制、突发情况视频存储。

    行车记录主要的功能是记录汽车前方实时影像,可实现行车视频的循环录制。为控制视频文件大小,同时又保证视频的清晰度,在该模块中设定分辨率为1 024×1 024,调用手机内置摄像头,并指定手机内部存储路径,循环录制时间默认为10 s允许用户自行在指定范围内设置。行车过程中大部分时间为非事故状态,因此无需长久保存,以设定的时间间隔循环录制。

    但在行车遇到异常情况时,有永久保留视频的需要,因此设有异常情况视频存储二级模块。通过对传感器状态的侦测,通常当汽车遭遇事故,会发生与普通行车状态相异的振动,手机置于车内,会同步异常振动。设置加速传感器检测的振动阈值,当侦测的手机传感器振动值大于等于阈值时,则进入该模块,将该部分视频进行永久存储,保留异常现场情况。

    (2)行车记录分享模块:该模块包含的二级模块为行车视频浏览、行车视频评论。

    行车记录分享模块的设计意图是增加APP的社交功能,也是增加用户使用乐趣的一个模块。通过分享平台,用户可将本人手机中存储的视频,分类分享行车过程的趣事、交通事故教训等,其他注册用户可浏览分享平台中的行车视频,同时也可对行车视频进行点赞、评论,讨论行车方法,增强自身行车安全意识。

    (3)行车导航模块:该模块包含的二级模块为高架助手、加油站导航、洗手间导航。

    该模块包含高架助手、加油站导航和洗手间导航3大功能。考虑到许多司机不熟悉外地路况,在该APP专门设置高架助手功能,对城市中高架道路的出入口进行详细全面的标注,用户通过该功能可以在行车前查看高架出入口信息,解决司机用户对高架出入口不熟悉的问题。另外,行车途中需要加油或休息,加油站导航功能和洗手间功能列出了当前行车点附近的加油站和洗手间信息,用户可以一键导航,无需另外启动百度、高德地图中再完成输入、查询和导航,提高用户使用系统的便捷性。

    (4)系统设置模块:该模块包含的二级模块为录制模式设置、导航设置。

    该模块针将录制模式、默认导航等多个参数设置成动态可变,提高系统的灵活性,满足不同类型用户的需求,提高用户的使用体验度。

    1.2 客户端界面设计

    行车助手APP客户端的界面设计设有启动欢迎页面,经5 s等待时间,自动进入显示有4个按钮的主界面,通过按钮分别进入主页、分享、导航和设置4个一级模块界面,每一级使用Intent方式跳转至二级模块界面。在每个界面中均添加“视频录制”悬浮按钮,实现视频录制的一键启用。

    2 系统实现

    2.1 行车视频录制

    行车视频录制采用MediaRecorder和Camera组件实现,MediaRecorder是基于底层OpenCore(Packet Video)库而实现。循环录制视频采用可自定义录制时间以及文件大小的方式。针对手机拍摄视角窄的问题,通过给手加装鱼眼镜头,提高拍摄角度宽度,加装广角镜头的手机或平板拍摄角度最大可扩展120°左右,相对行车记录仪普通的镜头,能够捕捉到更多的细节。

    2.2 行车记录分享

    行车记录分享采用OkHttp开发库实现,OkHttp库是由Square公司提供的基于HTTP协议的开发库[6],用于实现APP对网络的访问。APP采用两种视频上传模式,一種由用户自主选择上传,一种是紧急备份上传,在行车录制发生紧急碰撞时,系统会将紧急视频上传至服务器,避免手机内存卡的损坏导致视频的丢失,判断是否为紧急碰撞同样通过对手机的传感器振动值变化的监测实现。

    2.3 行车导航

    行车导航功能基于百度地图SDK,接入百度地图的开放接口。APP首先在地图数据库中将高架入口、行车点附近的加油站和洗手间等功能点标注出来。

    而后通过GPS定位读取的手机当前位置信息,如果判断用户的当前位置信息显示低于位置阈值,附近的加油站和洗手间等信息将显示在APP界面上,获取定点坐标主要代码如下。

    //获取查询到的POI详情的poi坐标

    LatLng poiDetailResultLocation =poiDetailResult.getLocation();

    poiDetailLat=poiDetailResultLocation.latitude;

    poiDetailLong=poiDetailResultLocation.longitude;

    //获取查询到的POI详情的poi地址

    String poiDetailAddress =poiDetailResult.getAddress();

    //计算距离

    distance=DistanceUtil.getDistance(myPosition,poiDetailResultLocation);

    3 结语

    移动互联的各项技术为驾驶员便捷行车提供了新的实现途径,该APP基于应用数量占市场主导的Android技术设计与实现了行车助手APP。APP主要实现了行车视频录制、视频分享社交功能和标注点导航功能,其中行车视频录制功能和导航功能是该APP的核心功能。

    [参考文献]

    [1]赵娜,袁家斌,徐晗.智能交通系统综述[J].计算机科学,2014(11):7-11,45.

    [2]刘宽,谭大禹.基于Android的智能行车记录仪的设计与实现[J].电脑知识与技术,2017(3):211-214.

    [3]段永成,赵曙光,王建强,等.基于安卓手机的行车记录仪设计[J].信息通信,2018(9):73-74.

    [4]岳晓庆.基于Android的行车服务助手的设计与实现[D].北京:首都经济贸易大学,2017.

    [5]黄婧,张林,季刊,等.基于Android平台的GPRS流量统计系统[J].计算机系统应用,2011(12):141-143.

    [6]李群.基于OkHttp的文件传输设计与实现[J].电子技术与软件工程,2018(13):180-181.

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/6 7:58:57