摘要
嵌入式车载导航系统设计的目的是为用户提供导航公告、地图,进行导航的一个导航系统APP。 与PC端应用程序相比,嵌入式车载导航系统的设计主要面向于广大用户,旨在为用户提供一个嵌入式车载导航系统平台。用户可以通过APP查看导航公告,进行地图导航的操作。 嵌入式车载导航系统是在Android操作系统下的应用平台。为防止出现兼容性及稳定性问题,服务器选择的是Apache,用户与后台之间的数据存储主要通过MySQL。用户在使用应用时产生的数据通过Java等语言传递给数据库。通过此方式促进嵌入式车载导航系统信息流动和数据传输效率,提供一个内容丰富、功能多样、易于操作的嵌入式车载导航系统。
绪论
1.1研究意义 近年来,随着网络基础设施的不断建成,互联网成为社会发展和经济增长的推动力。中国网民总体规模持续增长:一是城乡上网差距继续缩小,二是得益于互联网适应用老化改造持续推进,老年群体加速融入网络社会。上网的总时长保持增长,上网的终端设备呈现多元化,其中包括手机、笔记本电脑、电视机和平板电脑。其中,手机仍然是上网的主要设备。受新冠疫情影响,不但引起“大萧条”以来最严重的经济衰退,而且为人们的出行带来了极大的不便。由此带来的是,即时通信、网络视频、短视频用户、在线办公、在线医疗等应用保持较快增长,人们有愈来愈多的线上需求。随着近几年来,很多人都喜欢在手机上获取信息,如新闻、娱乐资讯、小说、地图等。 嵌入式车载导航系统就是针对适合移动设备方便用户访问和浏览而进行搭建的,而且还是基于PC端进行开发。嵌入式车载导航系统主要是针对智能手机用户的,有尺寸小、可方便携带的优势,带来了获取信息及时、方便快捷的用户体验,也可以减少加载资源的时间,以提前进行缓存内容。在当前各行业工作都转向线上的形势之下,嵌入式车载导航系统充分发挥了它的优势,利用互联网将用户、管理员和平台相互联系。在大数据背景下,产生的数据会非常繁多,后台会对产生的数据进行汇总和处理,确定其真实性和合法性。
1.2系统设计目的 为了给用户清晰直观的页面指示。用户在完成注册后,会将用户注册相关信息添加到后台数据库中;用户在登录时,会根据数据库存储信息进行身份验证。用户可以通过系统,输入地址进行导航的操作。后台管理人员也会根据用户的操作,及时更新导航公告、轮播图等内容。
1.3系统设计思想 在系统开发过程中,为了提升软件质量,提升用户体验,秉持严谨的态度制定了一些应遵守的原则。这些原则可以保证完成软件开发任务,也可以为后期软件测试和维护提供便利。以下是应遵守的一些原则: (1)用户第一原则 嵌入式车载导航系统的开发,不仅要建立用户思维,围绕用户展开工作、解决用户需求,还要把为用户创造价值放在工作的第一位,并作为产品制定项目的切入点。了解需求的构成,了解需求的背后,善于洞察用户需求。此外,还应探索新思路,做出创新并达成突破性结果。
系统开发环境及关键技术
2.1 Android Studio介绍
Android Stuido是Google公司在2013年推出一款开源的、跨平台的安卓集成开发环境,它可以运行在Windows、Linux和OSX等操作系统上,专门为Android开发而设计打造的软件,是一款以IDEA为基础的,为安卓开发提供便利而改造的IDE,除去开源免费跨平台的优势外,选择它作为主要开发工具的理由还有很多。与IDEA和Eclipse相比,它具有以下优势:
(1)UI界面更漂亮,主题也变得丰富,并且支持背景自定义。
(2)软件启动速度、响应速度、内存占用都得到了很大提升。
(3)功能更加强大,Eclipse经常卡顿的问题在它身上不会出现。
(4)软件的提示补全功能更加智能,开发效率得到很大的提升。
(5)它还支持用户定义智能保存,再也不用手动保存了。
(6)软件还支持用户实时预览,开发者可以一边开发一边预览,大大提高了用户开发和调试的效率。
(7)完美的内置了兼容了命令行终端,对于喜欢命令行终端使用的人来说,也是一大福音。
(8)含有丰富的插件库,可以选择很多可提升工作效率的插件,搜索点击就可完成安装。
(9)具有完美的版本控制工具,如Git、SVN等。
2.2 Java介绍
Java语言正式诞生于1995年,是由SUN公司开发研制的OAK语言发展而来的。Java语言继承了OAK语言可跨平台运行的特点,融合了面向对象编程的风格,JAVA以其独有的开放性、跨平台性和面向网络的交互性席卷全球,以其安全性、易用性和开发周期短的特点,迅速从最初的编程语言发展成为全球第一大软件开发平台.广受时下程序开发人员的好评[3]。后来又为了丰富Java语言的用途,提高生产力,将它进行设计和改造,以满足更多地开发和应用场景。经过改造后,它可以满足移动端开发,桌面应用开发和企业级应用开发。Java语言还为用户提供了丰富的类库,在掌握它的特性后,学习特定的工具包,就可以满足很多场景的开发。现在来看,Java语言在这三种平台的应用开发中,都占据了举足轻重的地位。 与其他语言相比,Java语言具有很多的优点,Java语言简单比较容易理解,有c语言的基础很容易就可以学会,中文和英文的学习资源也比较多,而且Java语言经过许多年的沉淀发展,逐渐演变出很多成熟的框架技术。企业还还可以封装自己的框架,让开发变得简单。它还具有跨平台性较其他语言这一个最大的优势,这意味着它只需要一次编译就可以运行在其他平台上。
2.3 Tomcat介绍
Tomcat是一个开源免费的的应用服务器,是Apache软件基金会项目中的一个核心项目,由sun等公司以及个人共同合作开发而成,是一款比较流行的网页应用服务器。Tomcat由一系列的组件构成,其中核心的组件有三个:web容器, servlet容器, JSP容器。Tomcat作为servlet容器,有三种工作模式:独立的servlet容器,servlet容器是web服务器中的一部分;作为进程内的servlet容器,servlet容器是作为web服务器的插件和java容器的实现;进程外的servlet容器,servlet容器运行于web服务器之外的地址空间,并作为web服务器的插件和java容器实现的结合[4]。反应时间不如进程内但伸缩性和稳定性比进程内优。 Tomcat有三种运行模式: (1)bio 即阻塞式I/O操作,Tomcat使用的是传统的Java I/O操作(即java.io包及其子包)。Tomcat在默认情况下,就是以bio模式运行的。
(2)nio 是一种新的I/O操作方式(即java.nio包及其子包)。Java nio是一个基于缓冲区、并能提供非阻塞I/O操作的Java API,因此nio也被看成是non-blocking I/O的缩写。 (3)apr 它是Apache HTTP服务器的支持库。可以简单地理解为:Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处文件读取或网络传输操作,从而大大地提高Tomcat对静态文件的处理性能。
系统结构图
APP首页界面图
导航公告界面图
地图界面图
我的界面图
后台登录界面图
管理员功能界面图
部分数据库表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
zhanghao | varchar | 200 | 账号 | ||
mima | varchar | 200 | 密码 | ||
xingming | varchar | 200 | 姓名 | ||
xingbie | varchar | 200 | 性别 | ||
shouji | varchar | 200 | 手机 | ||
touxiang | longtext | 4294967295 | 头像 |
结论
嵌入式车载导航系统以Android Studio为开发环境进行开发和最终的调试,后端采用Java语言进行开发,前端页面展示主要采用的是前端三剑客。用户主要是面向普通用户,旨在为用户提供一个涵盖各方面的嵌入式车载导航系统 APP。项目目前完成了用户基本需求,兼容性良好,未发生错误。但与真正投入使用的平台相比,功能和实用性明显不足,后期还有很多改进和完善的地方。例如,现在很多人使用的抖音短视频。此平台的功能丰富和对数据库的设计以及数据的处理的更加合理高效。各种界面和人性化的设计也值得去认真学习和探索。某些功能还具有很多细节还需要完成:如个人中心模块,可以允许用户自定义个性中心;对发布内容做更多地拓展,可让用户发布更多种类的内容;增加管理员模块,管理员可以进行相关信息的发布,也可以完成对用户的管理和用户遇到的问题及时处理;大数据推荐功能的实现,可帮助用户更快、更高效的找到相关内容。 由于自己知识储备量的不足,这个项目仅仅完成了一些最基本的功能。与实际生活的运用还存在着一定的差距,没有考虑到更多的应用场景。在今后的学习中,需要不断加强学习基础知识并且更加注重实践,做到从时间来到实践中去,达到融会贯通。但随着互联网基础设施的不断完善,此项目还是有很大的前景的。