基于Android的公交与美食设计与实现_第1页
基于Android的公交与美食设计与实现_第2页
基于Android的公交与美食设计与实现_第3页
基于Android的公交与美食设计与实现_第4页
基于Android的公交与美食设计与实现_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、xxx大学毕业论文(设计)本 科 生 毕 业 论 文题目名称 基于Android的公交与美食设计与实现 学生姓名 学号 系(部) 专业年级 指导教师 填写时间 I基于Android的公交与美食设计与实现摘要:现如今,随着智能移动终端与移动互联网的发展,基于Google Android开源平台的智能终端设备在世界范围内广泛普及。与此同时,基于Android的手机应用市场也得到了很大的发展,各种各样的手机应用层出不穷。其中,地图类应用由于其使用范围广和便捷性的特点,占据了较大的市场空间。本课题在此背景下,研究开发了一个基于Android的公交与美食搜索应用软件。本软件使用Eclipse与Andro

2、id SDK作为开发工具,采用SQLite数据库作为后台的数据服务支持,利用目前比较流行的百度地图SDK作为地图平台接口。最终完成的公交与美食搜索应用可让用户在手机上进行全国城市公交查询、周边美食搜索、美食评分与美食导航等操作。关键词:公交查询;美食搜索;美食评分;Android;百度地图The Design and Implementation of Bus and Food Base on AndroidAbstract:Nowadays, with the development of mobile Internet and intelligent mobile terminal, ba

3、sed on the Google Android open-source platform of intelligent mobile terminal equipment widely spread throughout the world. At the same time, mobile application which based on Android mobile terminal market also got great development, all kinds of mobile phone applications are always around us. Amon

4、g them, map applications occupy a larger market space because of its wide use and convenience features. In this context, which had developed a bus and food search application software based on Android mobile terminal.The application software uses Eclipse and Android SDK as the development tool, usin

5、g the SQLite embedded database as the backend data service support, using the baidu map SDK as the the map platform interface. The finished bus and food search application software for users to query the city bus, to search for food around, food navigation, food score and other operations.Key words:

6、Bus Query;Food Search;Food Score;Android;Baidu Map目 录 TOC o 1-3 h z u HYPERLINK l _Toc419493405 摘要 PAGEREF _Toc419493405 h 1 HYPERLINK l _Toc419493406 Abstract PAGEREF _Toc419493406 h 2 HYPERLINK l _Toc419493407 第一章 系统概述 PAGEREF _Toc419493407 h 5 HYPERLINK l _Toc419493408 1.1 开发背景和意义 PAGEREF _Toc419

7、493408 h 5 HYPERLINK l _Toc419493409 1.1.1 开发背景 PAGEREF _Toc419493409 h 5 HYPERLINK l _Toc419493410 1.1.2 开发意义 PAGEREF _Toc419493410 h 5 HYPERLINK l _Toc419493411 1.2 系统设计目标 PAGEREF _Toc419493411 h 6 HYPERLINK l _Toc419493412 1.2.1 系统实现目标 PAGEREF _Toc419493412 h 6 HYPERLINK l _Toc419493413 1.2.2 系统设

8、计模型 PAGEREF _Toc419493413 h 6 HYPERLINK l _Toc419493414 1.3 研究内容 PAGEREF _Toc419493414 h 7 HYPERLINK l _Toc419493415 第二章 开发工具及其环境 PAGEREF _Toc419493415 h 8 HYPERLINK l _Toc419493416 2.1 Android开发技术 PAGEREF _Toc419493416 h 8 HYPERLINK l _Toc419493417 2.2 Eclipse开发工具 PAGEREF _Toc419493417 h 9 HYPERLIN

9、K l _Toc419493418 2.3 Android SDK PAGEREF _Toc419493418 h 9 HYPERLINK l _Toc419493419 2.4 SQLite数据库 PAGEREF _Toc419493419 h 9 HYPERLINK l _Toc419493420 2.5 MVC开发模式 PAGEREF _Toc419493420 h 10 HYPERLINK l _Toc419493421 第三章 系统分析 PAGEREF _Toc419493421 h 11 HYPERLINK l _Toc419493422 3.1 可行性分析 PAGEREF _To

10、c419493422 h 11 HYPERLINK l _Toc419493423 3.1.1技术可行性 PAGEREF _Toc419493423 h 11 HYPERLINK l _Toc419493424 3.1.2经济可行性 PAGEREF _Toc419493424 h 11 HYPERLINK l _Toc419493425 3.1.3操作可行性 PAGEREF _Toc419493425 h 11 HYPERLINK l _Toc419493426 3.1.4硬件可行性 PAGEREF _Toc419493426 h 11 HYPERLINK l _Toc419493427 3.

11、2 功能需求分析 PAGEREF _Toc419493427 h 12 HYPERLINK l _Toc419493428 3.2.1 功能需求分析 PAGEREF _Toc419493428 h 12 HYPERLINK l _Toc419493429 3.2.2 性能需求分析 PAGEREF _Toc419493429 h 13 HYPERLINK l _Toc419493430 第四章 系统设计 PAGEREF _Toc419493430 h 15 HYPERLINK l _Toc419493431 4.1 系统概要设计 PAGEREF _Toc419493431 h 15 HYPERL

12、INK l _Toc419493432 4.1.1 概要设计的基本步骤 PAGEREF _Toc419493432 h 15 HYPERLINK l _Toc419493433 4.1.2 功能划分组织结构图 PAGEREF _Toc419493433 h 15 HYPERLINK l _Toc419493434 4.1.3 用例分析 PAGEREF _Toc419493434 h 16 HYPERLINK l _Toc419493435 4.2 系统流程图设计 PAGEREF _Toc419493435 h 18 HYPERLINK l _Toc419493436 4.2.1 公交查询中全国

13、城市公交线路查询流程图 PAGEREF _Toc419493436 h 18 HYPERLINK l _Toc419493437 4.2.2 美食评分中添加美食评分流程图 PAGEREF _Toc419493437 h 19 HYPERLINK l _Toc419493438 4.3 数据库设计 PAGEREF _Toc419493438 h 19 HYPERLINK l _Toc419493439 4.3.1 E-R图设计 PAGEREF _Toc419493439 h 19 HYPERLINK l _Toc419493440 4.3.2 数据库表设计 PAGEREF _Toc4194934

14、40 h 20 HYPERLINK l _Toc419493441 4.4 页面风格设计 PAGEREF _Toc419493441 h 21 HYPERLINK l _Toc419493442 4.4.1 主体风格设计 PAGEREF _Toc419493442 h 21 HYPERLINK l _Toc419493443 4.4.2 应用程序Logo设计 PAGEREF _Toc419493443 h 22 HYPERLINK l _Toc419493444 4.5 系统包结构 PAGEREF _Toc419493444 h 22 HYPERLINK l _Toc419493445 4.6

15、 百度地图SDK PAGEREF _Toc419493445 h 23 HYPERLINK l _Toc419493446 4.7 AndroidManifest.xml文件配置 PAGEREF _Toc419493446 h 24 HYPERLINK l _Toc419493447 第五章 系统主要模块的功能与实现 PAGEREF _Toc419493447 h 25 HYPERLINK l _Toc419493448 5.1 欢迎页面实现 PAGEREF _Toc419493448 h 25 HYPERLINK l _Toc419493449 5.2 公交查询实现 PAGEREF _Toc

16、419493449 h 26 HYPERLINK l _Toc419493450 5.2.1 公交查询 PAGEREF _Toc419493450 h 26 HYPERLINK l _Toc419493451 5.2.2 点击报站 PAGEREF _Toc419493451 h 27 HYPERLINK l _Toc419493452 5.3 美食搜索实现 PAGEREF _Toc419493452 h 28 HYPERLINK l _Toc419493453 5.3.1 快餐/美食搜索 PAGEREF _Toc419493453 h 28 HYPERLINK l _Toc419493454

17、5.3.2 美食详情 PAGEREF _Toc419493454 h 29 HYPERLINK l _Toc419493455 5.3.3 美食导航 PAGEREF _Toc419493455 h 30 HYPERLINK l _Toc419493456 5.3.4 添加评分 PAGEREF _Toc419493456 h 30 HYPERLINK l _Toc419493457 5.3.5 切换地图模式 PAGEREF _Toc419493457 h 31 HYPERLINK l _Toc419493458 5.3.6 重置搜索 PAGEREF _Toc419493458 h 31 HYPE

18、RLINK l _Toc419493459 5.4 美食评分实现 PAGEREF _Toc419493459 h 31 HYPERLINK l _Toc419493460 5.4.1 美食评分列表 PAGEREF _Toc419493460 h 31 HYPERLINK l _Toc419493461 5.4.2 新建评分 PAGEREF _Toc419493461 h 32 HYPERLINK l _Toc419493462 5.4.3 删除评分 PAGEREF _Toc419493462 h 32 HYPERLINK l _Toc419493463 5.5 网上冲浪实现 PAGEREF _

19、Toc419493463 h 32 HYPERLINK l _Toc419493464 5.6 使用帮助实现 PAGEREF _Toc419493464 h 32 HYPERLINK l _Toc419493465 5.7 关于系统实现 PAGEREF _Toc419493465 h 33 HYPERLINK l _Toc419493466 5.8 系统退出实现 PAGEREF _Toc419493466 h 33 HYPERLINK l _Toc419493467 第六章 总结 PAGEREF _Toc419493467 h 34 HYPERLINK l _Toc419493468 参考文献

20、 PAGEREF _Toc419493468 h 35 HYPERLINK l _Toc419493469 致谢 PAGEREF _Toc419493469 h 36第一章 系统概述1.1 开发背景和意义随着社会的发展,智能移动设备已经进入到了人们的日常生活当中,人们的生活、学习和工作越来越依赖于移动技术的发展。移动技术的发展历程以及目前的应用状况和发展趋势,可以充分地相信这项技术将极大的改变我们的学习、生活与工作方式。1.1.1 开发背景当今社会,移动互联网的发展与人们的生活息息相关,人们的日常生活也越来越离不开智能移动终端。其中,地图类应用由于其使用范围广和便捷性的特点,占据着较大的市场空

21、间。然而现行的一些手机地图类应用软件的目标定位并不明确,导致应用软件的功能过于臃肿,并不被广大用户接纳和喜爱。本课题针对目前市场上手机地图类应用良莠不齐的状况,并结合对经常出行并且使用地图类应用的用户进行的需求调查分析,开发出了这款基于Android的公交与美食搜索软件,最终实现了一款交互友好、主题明确、方便用户使用的公交与美食搜索软件,可以让户在手机上自行进行全国城市公交查询、周边美食搜索、美食导航与美食评分等操作,应用软件可高效运行,增加了用户的使用便捷性,方便了用户的出行与生活。1.1.2 开发意义基于Android的公交与美食搜索应用支持当下主流的各式各样的Android系统手机、平板

22、等移动终端设备,给用户提供了一种全新的公交查询与美食搜索体验。该应用程序的成功开发具有以下意义:(1)集合了移动终端与移动互联网的优势互补,代替了传统的公交查询方式,为用户提供了一种全新的交互体验;(2)基于Android移动终端的公交与美食搜索应用软件利用Android手机即可进行公交查询与美食搜索操作,不需要定制专用设备,具有较好的普及性;(3)具有零技术、零成本、零投入、的特点,用户不需要有任何基础,即可使用该应用软件;(4)应用程序采用各个功能模块相互独立的结构,具有很好的使用健壮性,对于美食评分中各项数据的存储较为准确,及时;操作简单、方便携带、交互友好是基于Android的公交与美

23、食搜索应用软件的最大特点。它是时代进步和科技创新相结合的产物,各项功能符合用户需求,是一款全新的公交与美食搜索应用软件。1.2 系统设计目标1.2.1 系统实现目标随着Android移动终端的普及,铺天盖地的手机应用与游戏充斥在我们身边。其中,地图类应用由于其使用范围广和便捷性的特点,有着较大的使用用户群体和较大的市场发展空间;但市面上现行的一些地图类应用盲目追求功能的庞大,导致了很差的用户体验。针对上述课题背景,开发一款基于Android移动终端的公交与美食搜索应用软件是势在必行的。基于Android移动终端的公交与美食搜索应用软件使用Eclipse与Android SDK作为开发工具,采用

24、SQLite嵌入式数据库作为后台的数据服务支持,利用国内比较流行的百度地图SDK作为地图平台接口,实现了全国各大城市的公交线路查询、手机定位自己、更改地图模式、周边美食定位、美食评分、网上冲浪、使用帮助、关于系统等功能,最终实现了这款基于Android移动终端的公交与美食搜索应用软件。并且命名为公交与美食。最终完成的公交与美食应用软件交互友好、主题明确、方便用户携带和使用,增加了用户的使用便捷性,方便了用户的出行与生活。1.2.2 系统设计模型基于Android移动终端的公交与美食搜索应用软件针对国内比较流行的百度地图SDK提供的应用程序接口进行二次开发,实现公交查询、导航等功能。同时在应用软

25、件实现中配合使用SQLite嵌入式数据库,实现了应用软件中美食评分各项数据的存储与交互,使应用软件具有较好的健壮性。系统设计模型如图1-1所示:图1-1 系统设计模型图1.3 研究内容基于Android移动终端的公交与美食搜索应用软件的开发历经了三个月的时间,先后经过了需求调研、可行性分析、系统概要设计、数据库设计、移动终端设计与实现、系统性能测试与分析等五个阶段。期间的工作主要分为以下几项:1.查阅了相关书籍及资料,深入了解Java语法、Android开发技术、Eclipse与Android SDK开发工具、SQLite数据库以及百度地图SDK应用程序接口二次开发等技术。为开发该手机应用软件

26、做了技术性的准备。2.对市面上现有的手机地图类应用软件做了调研与分析,经过对应用软件的可行性分析和需求分之后,在概要设计阶段,设计出了基于Android移动终端的公交与美食搜索应用软件的体系架构。3.根据前面对手机应用软件的分析和体系结构设计,以及对开发技术和工具的研究完成初期准备,进行了移动终端的页面设计及一部分功能代码的编写。 4.学习了百度地图SDK应用程序接口二次开发技术以及对应用软件中一些背景布局、图片等文件进行拉伸处理,以自适应不同类型的Android系统移动终端设备。5.中期进行了业务功能的修改和完善,并完成了项目的测试。对基于Android移动终端的公交与美食搜索应用软件的各个

27、功能模块进行介绍,并以截图的方式,展现给用户,以用户能很好的了解和使用该应用程序;6.最后根据所做系统及过程中收集的资料,完成毕业论文。第二章 开发工具及其环境2.1 Android开发技术Android是一种基于Linux的自由且开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑等,由Google公司和开放手机联盟领导及开发。随着移动互联网与智能移动终端的迅速发展,直至2013年10月全世界采用这款系统的设备数量已经达到10亿台。Android的系统架构如图2-1所示:图2-1 Android系统架构图从上述架构图中看,Android系统分为四个层,从高层到低层分别是应用程序层、

28、应用框架层、系统运行库层和Linux内核层。1.应用程序层Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等一些基本程序。所有的应用程序都是使用Java语言编写的。2.应用框架层开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块,并且任何其它的应用程序都可以使用其所发布的功能块,但需要遵循框架的安全性。同样,该应用程序重用机制也使用户可以方便的替换程序组件。3.系统运行库层系统运行库层包括程序库和Android运行库。程序库包含一些C/C+库

29、,这些库能被Android系统中不同的组件所使用。它们通过 Android 应用程序框架为开发者提供服务;Android运行库包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。4.Linux内核层Android 的核心系统服务依赖于 Linux 2.6 内核,包括了如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux 内核也同时作为硬件和软件栈之间的抽象层,为它们之间的传递服务。2.2 Eclipse开发工具Eclipse是一款非常优秀的开源集成开发环境,基于Java的可扩展开发平台,简称IDE。除了可以作为Java的集成开发环境外,它还可以作为编写其他语言的集成开

30、发环境(如C+和Ruby)。Eclipse凭借其灵活的扩展能力、优良的性能与插件技术,受到了越来越多开发者的喜爱。2.3 Android SDKSDK是指软件开发工具包,它的全拼是Software Development Kit。它被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合8。顾名思义,Android SDK就是指Android专属的软件开发工具包。这个工具包不仅包括了Android模拟器和用于Eclipse的Android开发工具插件(简称ADT),而且包括了各种各样的用来调试、打包和在模拟器(Emulator)上安装应用的工具。与此同时,

31、Android SDK同样向开发者们提供了AVD虚拟模拟器来模拟安卓移动设备,同时开发者可以根据自身的开发需要,选择合适的目标平台并建立模拟器进行运行和测试活动。开发者也可以通过真正的Android移动终端设备进行应用程序的调试与运行。2.4 SQLite数据库Android系统提供了多种数据存储方式,有SQLite数据库存储方式、文件存储方式、XML文件的SharedPreference存储方式等。本系统采用的是SQLite数据库存储方式,所以对其他的存储方式不展开说明。SQLite数据库是一个关系型数据库,因为它很小,引擎本身只有一个大小不到300k的文件,所以常作为嵌入式数据库内嵌在应用

32、程序中。SQLite是用C语言开发的,开放源代码,支持跨平台,最大支持2048GB数据,并且被所有主流编程语言支持。可以说,SQLite是一个非常优秀的嵌入式数据库。2.5 MVC开发模式MVC的全拼是Model View Controller,是模型(Model)视图(View)控制器(Controller)的缩写,是一种软件设计典范。不论是从开发者或者从用户的角度出发,他们可以根据自身或者客户的需求,选择合适的浏览数据的方式。在Android应用程序开发中,界面设计人员与功能实现编码人员可以实现真正的分离操作,不需要在设计基本完成后才开始开发功能程序。因为,在Android应用程序开发中,

33、界面设计是通过XML文件来实现,而应用程序的具体功能实现则是通过java类代买实现的,采用这样的分离模式,使得Android应用程序的开发效率更高。正是这样的MVC模式,才使得Android应用程序开发中工作分工更加明确。Android开发中的界面部分也采用了当前比较流行的MVC架构模式。Android应用程序的界面直接采用XML文件保存,使得界面开发变的很方便。在Android中控制器也是很简单的,一个Activity可以拥有多个界面,只需要将视图的ID传递到setContentView(),就可以指定视图模型所要显示的数据。同样在Android SDK中的数据绑定,也都是采用了与MVC框架

34、类似的方法来显示数据。在控制层上将数据按照视图模型的要求封装,就可以直接在视图模型上显示,从而实现了数据绑定。比如显示游标(Cursor)中所有数据的ListActivity,其视图层就是一个列表视图(ListView),将数据封装为列表适配器(ListAdapter),并传递给ListView,数据就可以在ListView中显示。第三章 系统分析系统分析的主要工作是对整个系统的功能与业务逻辑全过程的角度进行分析。本文从基于Android移动终端的公交与美食搜索应用软件的可行性分析、功能需求分析、性能分析等三个方面展开说明。3.1 可行性分析3.1.1技术可行性基于Android移动终端的公交

35、与美食搜索应用软件的开发采用成熟的Android开发技术,使用Eclipse与Android SDK开发工具实现功能,结合了国内比较流行的百度地图SDK作为地图二次开发接口,对于应用软件的后台数据服务使用了SQLite嵌入式数据库。因此该应用软件在技术上是绝对可行的。3.1.2经济可行性由于该应用软件设计的要求比较低,当下主流的Android 2.3以上系统的移动终端设备,无论是不同品牌、不同屏幕尺寸、不同配置的手机、平板、上网本等都可以作为理想的工具。另外,现在的Android智能移动终端设备的价格都比较便宜,因此在经济上也是允许的。3.1.3操作可行性基于Android移动终端的公交与美食

36、搜索应用软件界面设计简洁大方、操作简单、方便携带,用户不论年龄、文化程度高低,都可以很轻松地上手。3.1.4硬件可行性现行的主流Android 2.3以上系统的安卓移动终端设备都可以满足本该应用软件的硬件要求。综上所述,从技术方面,应用软件开发所用到的开发工具与技术都是可行的;从经济方面,该应用软件的设计所带来的长远利益远远大于其开发成本,说明具有经济价值;从用户进行公交查询与美食搜索操作方面,不论用户的年龄或文化程度,都可以很快的上手进行操作,表明该应用软件是具有广泛使用人群的。因此,从可行性分析来看该应用软件是可行的。3.2 功能需求分析需求分析是软件开发初始阶段中的重中之重的活动,需求分

37、析的准确与完善与否直接影响到系统后期的整个开发过程。一个完整的好的需求分析,可以为系统后期开发节省很多不必要的资源与劳力。3.2.1 功能需求分析在移动互联网与移动智能终端与人们的日常生活越来越息息相关的现状下,各种各样的手机应用与游戏总是充斥在我们身边。其中,地图类应用由于其使用范围广和便捷性的特点,占据着较大的市场空间。本课题在此背景下,研究开发了一款基于Android移动终端的公交与美食搜索应用软件。最终完成的公交与美食搜索应用软件可供用户在手机上进行全国城市公交查询、周边美食搜索、美食导航与美食评分等操作。基于Android移动终端的公交与美食搜索应用软件具备有携带方便、操作简单、便于

38、开展等特点,根据对该公交查询与美食搜索应用软件的特点和功能分析,可以得到它主要有如下功能:1.公交查询公交查询:在公交查询中,用户可以查询全国各大城市的公交线路,用户通过输入“城市名称”和“公交线路名称”即可查询到相对应的公交线路,线路向用户展示了公交线路的始发站、终点站及路过站的详情。正向|反向:用户通过此功能查看公交线路的正向与反向线路示意图。点击报站:用户通过点击上一站、下一站按钮,应用软件将根据用户的对应操作自动报出站名。2.美食搜索美食搜索:在美食搜索功能中,应用软件首先会定位用户的位置,并在地图上以蓝点进行标注。用户通过美食搜索可以查看自己周边5km之内的美食,应用程序将距离用户最

39、近的10个美食地点在地图上进行标注。用户选择某个美食地点后,可以查看详情或直接对美食进行评分。在美食详情页面,用户可以通过点击美食场所的电话进行咨询和订餐;用户也可以通过美食导航,导航寻找距离自己较近的美食地点。快餐搜索:在快餐搜索中,应用程序将距离用户最近的10个快餐地点在地图上进行标注,同样为用户提供了美食详情、美食导航和美食评分服务。定位自己:用户可以通过定位自己,更加清楚的确定美食与自己所在地点的方位和距离。切换模式:向用户提供了基础地图和卫星实景地图两种地图模式,方便用户针对周边地形进行辨认。重置搜索:重置搜索将清空地图上所有的标记,重新定位用户所在的位置。3.美食评分评分列表:评分

40、列表页面将用户所有已经评分的美食以列表的形式进行展示,用户可以查看美食评分的地点、所在城市、评分时间等详细信息。新增评分:用户也可以通过新增评功能,新建一个美食地点,相应的对其菜色进行评分。4.网上冲浪网上冲浪默认链接地址为百度,它为用户提供了一种休闲、放松的方式,一个快捷、轻巧的浏览器可以满足用户对网络资源的需求。5.使用帮助使用帮助应用软件进行了简单说明和介绍,方便用户更快地了解和上手该公交查询与美食搜索应用软件。6.关于系统关于系统向用户提供了应用软件的版本信息、开发人员等相关信息。7.系统退出当用户需要退出应用程序时,系统提供了“退出按钮”退出与连续两次按手机“返回键”退出两种方式,方

41、便用户的操作。3.2.2 性能需求分析通过上述的可行性分析与功能需求分析以后,可以得到对基于Android移动终端的公交与美食搜索应用软件的性能要求,归纳如下:1.实用性为方便用户的使用,设计出功能齐全、操作简单、方便携带、充分满足用户对公交查询、美食搜索、美食评分等需求的手机应用软件。2.操作简单该应用软件应于不同文化程度的用户,界面简约大方,不会出现审美疲劳,同时公交查询、美食搜索、美食评分等操作方式都是尽可能简单易行。3.用户体验用户在每次进行公交查询、美食搜索、美食评分等操作时都能有始终如一的体验。4.自治性基于Android移动终端的公交与美食搜索应用软件采用各个功能模块相对独立的设

42、计,保证应用程序的健壮性和稳定性。5.可靠性本应用软件要求在任何时刻都能够保证精确数据的能力,比如,保持美食评分数据的原则性、持久性和一致性等。6.可用性用户在何时何地都可以使用该应用软件自行进行对应的公交与美食查询各项操作。7.可管理性基于Android移动终端的公交与美食搜索应用软件的美食与美食评分的各项信息使用了单独的SQLite嵌入式数据库来进行信息存储,保证了各项信息的可管理性。8.适应性基于Android移动终端的公交与美食搜索应用软件可以适应不同品牌、不同屏幕尺寸、不同配置的Android手机终端和pad,而且显示效果与用户体验始终如一。9.代码可读性好编写代码的要求是简洁、易懂

43、。10.安全性在使用过程中,用户的个人信息不会被第三方获取或泄露。第四章 系统设计系统设计的最终目的是建立系统的物理模型,主要包括设计出系统的逻辑模型、分析系统功能需求与性能需求等。本文从系统的概要设计、数据库设计和页面设计进行说明。4.1 系统概要设计系统概要设计是软件工程中一个重要的步骤和环节,直接影响到软件系统开发下一阶段的代码编写和系统详细实现。4.1.1 概要设计的基本步骤设计的基于Android移动终端的公交与美食搜索应用软件采用了模块化的设计方法,对系统各个模块的功能进行归纳,将不同的功能进行分类、对相同的功能进行整合,在遵循模块独立性原则下将系统功能划分为若干模块。概要设计的具

44、体步骤如下:(1)确定每一个模块要实现的功能;(2)确定模块与模块之间的调用关系;(3)确定模块之间的接口,即模块之间传递的信息;(4)评价模块结构的质量。4.1.2 功能划分组织结构图根据系统功能模块的划分和设计,可以得到该手机应用软件具体的功能模块图,如图4-1所示。该图给出了详细的模块划分和模块组织结构,能够直观展现系统的功能结构关系。图4-1 功能划分组织结构图基于Android移动终端的公交与美食搜索应用软件由公交查询、美食搜索、美食评分和其它功能等四个主要功能模块组成。各个功能模块相互独立,功能互补。在公交查询功能中,用户可以查询全国各大城市的公交线路;在美食搜索功能中,用户可以检

45、索自身周边的快餐与美食,并且可以进行查看详情和线路导航操作;美食评分功能中用户可以对各种美食的详情进行记录和打分。基于Android移动终端的公交与美食搜索应用软件还提供了网上冲浪、关于系统、使用帮助、系统退出等一些附属的非核心功能,可以使用户有更好的交互体验。4.1.3 用例分析根据该手机应用软件各功能模块之间所侧重的功能分类不同,将它的用例分析分为两大类,具体介绍如下分析。1.顶层用例用户在手机公交查询与美食搜索应用软件的顶层用例分析如图4-2所示:图4-2 顶层用例图2.用户各项操作用例图(1)用户在公交查询模块中查询全国城市公交线路操作用例图如图4-3所示:图4-3 公交查询操作用例图

46、(2)用户在美食搜索模块中进行周边快餐美食搜索操作用例图如图4-4所示:图4-4 周边快餐美食搜索用例图(3)用户查看已评分美食列表操作用例图如图4-5所示:图4-5 用户查看已评分列表操作用例图(4)用户添加美食评分操作用例图如图4-6所示:图4-6 用户添加美食评分操作用例图4.2 系统流程图设计系统流程图是对系统中一个单独的功能模块的流转与执行过程的另外一种直观的表示,可以更加直观的观察到系统各个功能的流程是如何执行的。下面围绕基于Android移动终端的公交与美食搜索应用软件的几个主要功能的数据流程图展开说明。4.2.1 公交查询中全国城市公交线路查询流程图在公交查询功能模块中,用户可

47、以查询全国各大城市公交线路。其具体流程图如图4-7所示:图4-7 公交查询流程图4.2.2 美食评分中添加美食评分流程图用户在添加美食中,手机应用软件首先验证用户输入评分信息是否完整,然后将评分数据完整的插入数据库表中,方便用户下次查看已评分的美食列表与详情等。其具体流程图如图4-8所示:图4-8 美食评分流程图4.3 数据库设计系统的数据库设计是为软件开发的后续工作提供后台的数据服务支持,方便系统前端可以及时、准确地获取所需要的数据。数据库设计应该与系统设计紧密相结合,下面主要围绕E-R图的设计和数据库表的设计展开详细说明。4.3.1 E-R图设计E-R图可以直观的表示概念模型。E-R图由实

48、体、属性、联系三部分组成。根据系统数据库的需求分析、实体数据项与数据结构,可以得到该手机公交查询与美食搜索应用软件的E-R图。因为在该应用程序中需要存储的数据较少,下面对美食评分信息E-R图进行设计,美食评分信息E-R图如图4-9所示:图4-9 美食评分E-R图4.3.2 数据库表设计在完成系统的E-R模型之后,需要将E-R图转化为关系模型,设计出数据库所需要的表单。关系数据库中的二维表格可以很清楚地描述数据之间的联系,下面是数据库的逻辑实现,以二维表的形式展示。根据基于Android移动终端的公交与美食搜索应用软件各个模块的功能需求,设计出该应用程序中的SQLite数据库表只有美食评分信息表

49、。数据库中具体的数据表见以下介绍。美食评分信息表主要是存储用户针对某美食评分详细信息的数据,美食评分信息表如表4-1所示:表4-1 美食评分表表名反馈信息t_food_score列名数据类型空/非空约束条件含义IdInteger非空主键美食评分编号Place_nameVarChar非空-场所名称Place_addressVarChar非空-场所地址CityVarChar非空-所在城市Tele_numVarChar非空-联系电话Create_timeVarChar非空-评分时间Tese_foodVarChar非空-特色美食名称Tese_scoreVarChar非空-特色美食评分Jingpin_f

50、oodVarChar非空-精品菜色名称Jingpin_scoreVarChar非空-精品菜色评分4.4 页面风格设计不论是Web设计、或是移动终端的应用程序设计都要有一个设计风格,一个好的设计风格可以带给人们愉悦的体验,也可以给人们一种舒服的感觉,这样用户体验也会好很多。相对于传统的一些地图类手机软件,其目标定位并不明确,导致应用软件的功能臃肿,并不被广大用户接纳和喜爱。而基于Android移动终端的公交与美食搜索应用软件通过安卓移动终端即可实现,操作简单、方便携带,为用户的出行与生活提供了便利。其次,一个好的移动终端应用软件都要有自己的风格设计,一个差的第一印象也是留不住玩家与用户的,因为没

51、有给他们带来吸引力。基于Android移动终端的公交与美食搜索应用软件主要是为用户提供一种全新的、不同以往的地图类应用。操作简单、便于携带、易于使用是吸引用户的关键,同时,优秀的手机应用程序界面设计可以带给用户更好的体验、提升他们的心情愉悦感。4.4.1 主体风格设计在移动终端手机应用程序的设计中,首先映入用户眼帘的是应用程序的整个页面与布局设计,一个优秀的手机应用程序主题风格会留下更多的用户。主题风格的设计体现除了使用者的形象和延伸内涵的色彩,手机应用程序的标志、标题、主菜单和主色块,给人以整体统一的感觉。与此同时,可以在保证应用程序主题风格统一的基础上适当的加入其它合适的配色,给用户一种和

52、谐统一的体验。应用程序首页如图4-10所示:图4-10 应用程序首页图基于Android移动终端的公交与美食搜索应用软件采用了时下较为流程的Windows Phone磁贴界面设计,主色调背景为黑色,页面色彩辅以其它不同颜色和形状的磁贴图标,整体风格协调统一、生动形象、简单大方,可以吸引用户的注意力,给他们耳目一新的感觉。4.4.2 应用程序Logo设计在此基础上,基于Android移动终端的公交与美食搜索应用软件的Logo设计同样都是简约大气。Logo设计如图4-11所示:图4-11 Logo设计图移动终端的Logo设计是以现实生活中的餐盘餐具为灵感来源,采用了带形状的扁平化图标设计,刀叉餐具

53、整齐的摆放在餐盘内,形象生动的体现了该手机应用软件的主题,搭配简约却不简单。4.5 系统包结构基于Android移动终端的公交与美食搜索应用软件的设计主要是针对当前主流的Android系统,包括各种品牌、类型的手机、Pad设备等。在设计移动终端应用程序时,兼顾了不同的手机屏幕、不同分辨率、不同的屏幕尺寸等因素,对布局文件做了相应的自适应性处理,针对应用程序图标和一些背景图片使用了9.png工具对其进行了不同的拉伸,可以保证图片在不同的设备上达到最好的显示效果,提供始终如一的交互界面。该手机应用软件在移动终端显示的布局文件存放在项目工作区间的busANDfood/res/layout/文件夹下。

54、游戏程序布局主要利用LinearLayout线性布局,采用了Vertical与Horizontal两种方式 ,在一些特殊的页面使用RelativeLayout相对布局,使页面保证整齐简洁,可以自适应不同的手机屏幕。系统包结构如图4-12所示:图4-12 系统包结构对上图中包结构介绍如下:(1)src目录:主要是完成工程的Java代码编写。里面包括com.busANDfood、com.busANDfood.util、com.busANDfood.db、com.busANDfood.model和com.busANDfood.ui五个包文件,在com.busANDfood中存放了工程中用到的Acti

55、vity类,在com.busANDfood.util中存放了一些常用的工具类,在com.busANDfood.db中存放了和SQLite数据库相关的数据库表操作类,在com.busANDfood.model中存放了美食评分的数据实体类,在com.busANDfood.ui中存放了应用软件的警告框、忙碌框和提示框的自定义java类。(2)gen目录:系统自动生成的源代码目录,其中含有非常重要的R.java文件,它所包含的每一种静态内部类都对应着相应的一种资源。(3)assets目录:资源目录,在该工程项目中为空。(4)bin目录:输出文件夹。其中包含的.apk文件可以移植到手机上安装运行。(5)

56、res目录:资源文件夹。其中drawable中存放了工程需要的图像资料,raw中存放着音乐资料,anim中存放了页面之间跳转的动画。4.6 百度地图SDK基于Android系统的位置监控系统在移动终端都是采用百度地图作为支持的。百度地图 Android SDK是一套基于Android 2.1及以上版本设备的应用程序接口, 可以使用该套SDK开发适用于Android系统移动设备的地图应用,通过调用地图SDK接口,可以轻松访问百度地图服务和数据,构建功能丰富、交互性强的地图类应用程序3。同时,百度地图SDK也提供了地图展示和地图操作功能、支持周边检索、区域检索和城市内检索、提供了地理坐标和地址之间

57、相互转换的能力、支持公交信息查询、公交换乘查询等路径检索、提供了基于GPS、WIFI、基站、IP混合定位模式等等。百度地图的动能异常强大,而且开发者申请key时的操作要比谷歌地图简便。百度地图开发者key申请如图4-13所示:图4-13 百度地图key申请4.7 AndroidManifest.xml文件配置AndroidManifest.xml是Android应用程序的清单文件,主要进行权限和Activtiy的配置。它的主要功能有:对Android应用程序中用到的Activity.java文件进行声明(有点类似于Java Web中对Servlet使用的声明);声明手机应用程序的风格、标题栏等

58、样式;对一些用户使用权限的声明,例如连接Internet权限、读取手机SD卡、WiFi权限等等的权限声明;声明手机应用程序所需要的AndroidAPI的最低版本级别和开发目标版本级别;列举手机应用程序所需要链接的库等。本应用清单文件中android:minSdkVersion=8android:targetSdkVersion=19分别代表了应用程序运行的最低版本和目标版本,分别是Android 2.2和Android 4.3的系统;而android:screenOrientation=portrait代表移动设备的屏幕始终是竖直显示的,保证了应用程序在设备翻转的时候不会跟随翻转而失真。第五章

59、 系统主要模块的功能与实现系统的具体实现是整个软件生命周期中最为重要的一个环节,在此阶段中需要花费的人力和物力也是最多的。下面对基于Android移动终端的公交与美食搜索应用软件的主要功能模块进行详细介绍。5.1 欢迎页面实现欢迎界面是用户对一个移动终端应用的第一认识,本页面使用Handler方法发送和处理消息,使欢迎页面延迟三秒钟执行run方法跳转到程序主界面欢迎页面如图5-1所示:图5-1 欢迎页面图关键代码如下:/延迟3秒后执行run方法中的页面跳转new Handler().postDelayed(new Runnable() Override public void run() In

60、tent intent = new Intent(Welcome.this, MainFrame.class); startActivity(intent); Welcome.this.finish(); , 3000);5.2 公交查询实现公交查询功能模块以百度地图为支持平台,对其提供的应用程序接口进行二次开发。为用户提供了全国各大城市的公交线路查询,下面针对公交线路查询和点击报站功能进行介绍。5.2.1 公交查询用户在公交查询页面,通过输入“城市名称”和“公交线路名称”,点击查询按钮进行公交线路查询。并提供了“正向行驶”与“反向行驶”两种线路模式,方便用户查看。“正向行驶”的线路图如图5-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论