毕业设计论文基于Android平台的驾校模拟考试系统docx.docx
- 文档编号:26130851
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:26
- 大小:100.18KB
毕业设计论文基于Android平台的驾校模拟考试系统docx.docx
《毕业设计论文基于Android平台的驾校模拟考试系统docx.docx》由会员分享,可在线阅读,更多相关《毕业设计论文基于Android平台的驾校模拟考试系统docx.docx(26页珍藏版)》请在冰豆网上搜索。
毕业设计论文基于Android平台的驾校模拟考试系统docx
河北农业大学
本科毕业论文
题目:
基于Android平台的驾校模拟考试系统
学院:
信息科学与技术学院
专业班级:
计算机1101班
学号:
学生姓名:
指导教师姓名:
指导教师职称:
讲师
二O一五年六月一日
随着智能手机的发展,越来越多电脑端的功能可以在手机移动端实现。
智能手机的逐渐普及,逐渐改变了人们的日常生活方式。
在手机端办公、学习、娱乐等活动以其方便、不受时间和空间限制的特点逐渐被越来越多的人青睐并成为人们的习惯。
而在智能手机市场份额中,Android智能手机所占比例最大,用户最多,软件数量最丰富,可见Android手机应用的前景之广阔。
Android是一个有待发掘的宝藏,所以我们就以模拟考试系统为例子,对Android系统进行了一定的学习和研究,有助于我们更好地发掘和利用这个宝藏,跟紧时代的步伐,具有重要的意义。
本系统是一个基于Android的模拟考试系统,题源是驾校考试的科目四理论知识。
本系统有随机抽题并组卷,实时查看问题答案和问题解析,考试计时等功能,能满足基本的模拟考试效果。
题型有三类,分别是单项选择题、判断题和多项选择题。
系统的前台,即UI用户界面通过XML语言实现,后台代码核心是Java语言,数据库支持是轻量级数据库SQLiteo数据库可以实时更新,具有基本的增加、删除、修改、查找功能。
系统界面简洁大方,功能完整并容易上手使用,是一个不错的基于Android的模拟考试系统。
关键词:
Android;模拟考试系统;智能手机;驾校;
Abstract
Withthedevelopmentofsmartphones,moreandmorecomputerterminalfunctionscanbeimplementedinthemobilephoneside・Theincreasingpopularityofsmartphones,andgraduallychangethewaypeople5sdailylives・Inthemobileterminaloffice,study,entertainmentandotheractivitiesforitsconvenience,withouttimeandspaceconstraintsfeaturesgraduallybeingfavoredbymoreandmorepeopleandbecomeahabit.Inthesmartphonemarketshare,Androidsmartphoneslargestproportionofmostusers,thesoftwaremostabundant,visibleprospectofvastAndroidmobileapplications.Androidisatreasuretobediscovered,sowehavetoSimulatetheexamsystemasanexampleoftheAndroidsystem,acertainamountofstudyandresearch,willhelpustobetterexploreandexploitthetreasure,withthepacetighttimes,hasanimportantmeaning.
ThissystemisasystembasedonAndroidmockexams,problemsourceistheDrivingTestsubjectsfourtheoreticalknowledge・Thesystemhasrandomquestionandtestpaper,real—timeviewanswerstoquestionsandproblemstoresolve,theexaminationtimingandotherfunctions,tomeetthebasicanalogtestresuIts.Therearethreetypesofquestions,whicharemultipiechoice,falsequestionsandmultipie-choicequestions.Receptionsystem,namelyUIuserinterfacethroughXMLlanguage,thecodebehindthecoreJavalanguage,databasesupportisalightweightdatabaseSQLite.Databasecanbeupdatedinrealtime,withabasicadd,delete,modify,searchfunction.Systeminterfaceissimpleandelegant,full-featuredandeasytousetouse,itisagoodAndroid-basedmockexamsystem.Keywords:
Android;Simulationtestsystems;smartphones;Driving;
1绪论1
1.1课题背景、目的及意义1
1.2国内外现状分析1
1.3论文组织结构2
2相关技术介绍3
2.1使用的技术介绍3
2.1.1Java编程语言3
2.1.2Android平台3
2.2使用的工具介绍4
2.2.1Eclipse4.24
2.2.2JDK1.74
2.2.3AndroidSDK4
2.2.4ADT4
2.2.5SQLite数据库4
2.2.6SQLiteDeveloper5
3需求分析6
3.1需求概述6
3.2功能性需求分析6
3.3非功能性需求分析7
3.4运行环境7
4系统设计8
4.1概要设计8
4.1.1数据库的设计8
4.1.2UI布局文件的设计8
4.1.3类的设计8
4.2详细设计8
4.2.1数据库的设计8
4.2.2UI布局文件的设计9
4.2.3类设计11
5系统实现12
5.1主界面12
5.2考试界面13
5.3MainActivity类14
5.4ExamActivity类15
6总结与展望18
6.1总结18
6.2展望18
致谢19
参考文献20
1绪论
1.1课题背景、目的及意义
2009年1月7日,工业和信息化部位中国移动、中国电信和中国联通发放3张第三代移动通信(3G)牌照,标志着我国正式进入3G时代。
[1)移动存储、移动办公、移动生活等逐渐成为人们的生活方式。
⑵根据时代背景,智能手机的出现,是人类发展史上一个里程碑,随着它的不断研发、日益普及,且基于Internet的产生、网络化,手机在人们日常生活中所扮演的角色越来越不可缺少也越来越重要。
⑷智能手机已经成为人们的必备。
智能手机全球化时代,人们已经不能满足于从电话、书籍、口头等日常方式来获取他们所需要的信息,更多的是通过便携的手机,这个无形的、巨大的载体,甚至不仅仅局限在信息的获取,更多的是要求获取信息时的便捷性、时效性、速效性等,近些年,智能手机的更多的向人工智能方向发展,用户可以在智能手机上做越来越多的事情,甚至出现“智能手机会取代PC”这样的说法,可见智能手机的火热。
⑷
而Android是智能手机系统中比较突出的,它的开源、嵌入式、移动等特性使它在智能手机市场占有举足轻重的地位。
随着Android系统的持续火爆,各种各样的深度定制的Android系统的出现,让用户一次又一次地刷新着对Android系统的看法,喜欢Android系统的用户越来越多,运行Android系统的智能手机将不断增加,人们肯定会越来越多跨入Android的阵营。
而正是基于智能手机的移动便捷的特性,手机端的模拟考试系统也必定会越来越广泛的被使用,可以给更多的手机用户带来更多的便利。
随着私家车的逐渐普及,越来越多的人有考取驾驶执照的需要,这样,基于Android的驾校模拟考试系统便应运而生。
1.2国内外现状分析
Android在中国的前景十分广阔,首先消费者比较成熟,在国内,有大量的Android社区,这些社区聚集了广大的开源爱好者,他们从兴趣出发,为Android做着完善、开发的事情,源源不断地给用户带来更多好用的手机系统或应用,用户也活跃在这些社区,与广大Android爱好者交流着自己的使用体验。
这些社区为Android在中国的普及做了很好的推广作用。
说我们可以预见Android也将会被广泛应用在国产智能上网设备上,将进一步扩大Android系统的应用范围。
另一方面,由于国内政策的限制,导致Android的部分功能如GooglePlay应用市场在国内无法正常使用,目前常用的解决方法是使用类似的A8VPN的VPN服务来访问。
闯
在市场稳定快速增长的同时,中国安卓手机市场将呈现五大发展趋势:
一.用户对多媒体和移动设备的强大需求是中国安卓手机市场发展的动力。
二.移动终端,如智能手机,平板电脑等的普及以及对开放式操作系统的进一步开发,能保证安卓的持续活力;三.移动终端产能的提升,成本的下降,制造技术的提高和激烈的价格竞争将加快移动终端降价的步伐;四.网上购物的普及以及物流运输业的发展,也在一定程度上促进了安卓移动终端的消费;五•更完善的售后服务,移动终端保险B的诞生,将提高安卓的用户体验,安卓用户粘性会大幅提升。
总体来说,Android智能手机系统以它丰富多样并超前的功能给我们的生活带来了巨大改变。
但从利弊方面来说,它在给我们带来方便的同时,也带来一些负面影响,如不少青少年会沉浸在智能手机的世界里。
因此,我们应该理性面对,理智使用,不能沉迷于此,更不能凭借它的功能为所欲为。
我们应该正确面对Android,让它随着科技与时代的发展,给用户带来更多的方便。
如此一来,安卓手机的发展前景才是一片光明的。
1.3论文组织结构
本论文的安排结构如下:
第一章:
绪论。
主要描述课题研究的背景与意义以及Android系统的国内外现状。
第二章:
相关技术介绍。
介绍驾校模拟考试系统所使用的开发工具,如对JAVA、Android、Eclipse的描述,以及自己使用这些工具或技术的心得体会。
第三章:
需求分析。
通过对驾校考试的了解,分析了应用应该具备的功能,确定了运行系统需要的环境。
第四章:
系统设计。
具体描述了系统各个类的功能和实现思路。
第五章:
系统实现。
描述了各个功能的具体实现并附上关键代码。
第六章:
总结。
描述所完成的工作,突出工作量及亮点,并指出了系统不足和可改进地方。
2相关技术介绍
2.1使用的技术介绍
2.1.1Java编程语言
Java是由Sun公司推出的一种面向对象编程语言和Java平台的总称。
在1995年开始出现。
Java是1991年为消费类电子产品的嵌入式芯片而设计的。
1995年重新设计用于开发Internet应用程序。
Java有动态Web、跨平台、Internet计算的特点。
Java被广泛接受并推动了Web的迅速发展。
另外,Java还在被不断的完善与改进。
Java自问世后被业内人士所认可,它的发展也非常迅猛,并有力冲击了C++语言。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
2010年Oracle公司收购SunMicrosystemso[,sl
Java同时具备C语言和C++语言的特点。
它也是一个面向对象的编程语言,它有C++语言面向对象技术的核心。
Java用引用替代了C++语言中容易引起错误的指针、取消了运算符重载、并用接口替代了父类的多重继承,Java的垃圾回收机制能自动回收不再被引用的对象所占用的内存空间,大大简化了程序员对于内存管理的工作。
在后续版本中,又引入了泛型编程的技术、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
呵
Java和一般的编译语言和解释语言不同,它用二进制字节码作为桥梁,再使用各种不同平台上的虚拟机来运行从源代码编译来的二进制字节码,从而实现了“一次编译、到处执行”的跨平台特性。
但缺点是,每次编译成二进制字节码都需要耗费一定的时间,这个特性在一定程度上降低了Java的性能。
“°)
编辑Java源代码可以使用任何无格式的纯文本编辑器,在Windows操作系统上可以使用微软记事本(Notepad)、EditPlus等程序,在Linux平台上可使用vi工具等。
2.1.2Android平台
1.Android概述
Android是一个平台,主要包括Linux微内核,中间件(SQLite等),关键应用(电话本、邮件、短消息、GoogleMap>浏览器等),提供的Java框架,以及Android中的JVM。
tn]
2.关键类
View(视图)、contentproviders(应用交互管理类)、ResourceManager非编码資源管理类、NotificationManager(通告管理类)、ActivityManager(生命周期管理类)。
3.界面开发
这一块主要讨论了Android的界面开发机制,可以讲组件的初始化抽取出来放到配置文件中,组件更新用编码方式来处理。
4.应用构成
Android的应用一般由以下四个关键部分构成Activity>IntentReceiver、Service、ContentProvidero其中Activity是必要部分。
5.布局管理
Android提供了LinearLayout线形布局,RelativeLayout相对布局,FrameLayout层叠布局,TableLayout表格布局,AbsoluteLayout绝对布局五大布局管理。
6.Activity交互
Intent方式:
Intent其实就是用来在Activity之间做交互用的,需要说明的是Intent有个意图说明,值得用深究,举个简单的例子,有种叫Intent.ACTION_CALL,可直接拨打电话。
SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置。
SharedPreferences类似过去windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问,最终是以xnl方式来保存,效率不如Intent,但是由子可以共享,所有可以再Acitivity之间交互。
但其效率比SQLite要高。
7.Android特点之生命周期
每一个Android应用都是以一个进程的方式运行的,其生命周期不是有自身控制,而是由系统根据运行的应用的一些特征来决定。
2.2使用的工具介绍
2.2.1EcIipse4.2
Eclipse是一个可扩展的开发平台,它的源代码是开放的,并且基于Java语言。
Eclipse的本质是一个开发框架和一组服务组件,它的开发环境是通过子通话组件来构建的。
不过Eclipse自带一个标准的插件集合,集合里包含Java开发工具(JavaDevelopmentToolsJDT)。
2.2.2JDK1.7
JDK(JavaDevelopmentKit)是Java语言的软件开发工具包(SDK)oSE(J2SE),standardedition标准版,是我们通常用的一个版本。
主要用于移动设备、嵌入式设备上的java应用程序。
1.7则是现有JDK的版本号。
2.2.3AndroidSDK
SDK:
(softwaredevelopmentkit)软件开发工具包。
被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合oAndroidSDK指的是Android专属的软件开发工具包。
2.2.4ADT
ADT:
安卓开发工具(AndroidDevelopmentTools)o在Eclipse编译IDE环境中,需安装ADT(AndroidDeveloperTools)Plug-in,这是Android在Eclipse上的开发工具。
2.2.5SQLite数据库
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。
它是D.RichardHipp建立的公有领域项目。
它是为嵌入式设备设计的,现在很多嵌入式设备中都有它的身影。
SQLite所占用的系统资源非常低,在一般的嵌入式设备中,运行SQLite数据库只需要不足1M的内存。
它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tel、C#、PHP,Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
SQLite第一个Alpha版本诞生于2000年5月。
至2015年已经有15个年头,SQLite也迎来了一个版本SQLite3已经发布。
2.2.6SQLiteDeveIoper
SqliteDeveloper是一款比较专业的数据库管理工具,强大的功能可以让你很轻松地管理sqlite3数据库。
支持SQL语法高亮显示,关键字以及字段名、表的自动完成,自动高亮匹配括号。
自动显示SQL语法错误,支持Unicode编码。
完全可视化的查询及设计器,支持多种形式的数据编辑,能够将数据直接导出为HTML/EXCEL/SQL/WORD/XML格式,支持CSV文件的导入,可以快速查找数据库中的指定元数据。
3需求分析
3.1需求概述
需求分析是软件工程中一个重要的环节。
需求分析的工作在项目开发开始前就要完成。
在需求分析阶段,可以采用问卷调查的方式统计用户对特定系统功能的期望,还可以先做出一个系统模型后给用户演示,在演示过程中记录下用户的评价和改进意见,作为后续需求文档编写的参考。
本系统是一个驾校模拟考试系统,这个系统主要面对的是即将面临驾校理论测试,但是又不希望繁琐的打开计算机,在教材提供的光盘上进行理论考试练习,或者是某些不提供摸拟考试系统光盘的地区的用户,本系统基于Android系统开发,利用Android系统在手持便携设备(如:
“智能手机”、“平板电脑”等)普及的优势,给用户提供便捷、全面并且具有针对性的练习,使得用户能够在步入考场前就能够应付考场中的各种题目。
本系统针对当照理论考试而设计,主要针对理论考试中出现的交通法律法规、行车注意事项、交通标志等题目,题库完全按照驾照考试大纲设计,并且通过顺序练习完成一整套题库的习题并且即时显示练习正确答案以便记忆,随机练习随机抽取题库巩固记忆,模拟考试仿真考场情景计时、计分以及考后错题集,系统练习设计循序渐进,用户可以结合自身需求有选择的进行各种练习,能帮助用户顺利通过驾照考试,而且系统基于Android便携设备设计可以用户闲暇时间随时随地进行练习,方便快捷。
3.2功能性需求分析
通过Eclipse的平台,开发一个基于Android的模拟考试系统,任务目标主要有:
1.通过算法实现模拟考试功能
这是模拟考试系统的核心功能,基于各种算法。
2.完成试题随机抽取功能与组卷功能
系统后台会有一个数据库支持,数据库内是考试题库,数量很大,但考试时的题量是有限的,这就要求系统能在题库中随机抽取不相连续的题目然后重组成一套试卷,以达到对考试的最大程度的模拟。
3.实现评分功能
评分功能把用户的分数分为三种情况,分别是满分、及格但没有满分和不及格的情况。
满分时系统要给出夸赞,及格则要给出具体分数和错误题目的个数,不及格系统则要提醒用户并给出建议。
4.实现显示正确答案和解析功能
问题的答案在用户做对或做错的情况下都要显示,并且在答案正确时用蓝色字体显示,在错误时用红色字体显示。
题目的解析只是在题目答错时出现,并用红色字体显示。
3.3非功能性需求分析
为了美观及操作便捷,本系统采用简洁大方的界面设计。
首先是系统欢迎界面的设计,只用两张静态图片进行美化,分别是背景图片和主题图片。
代表主要功能的【开始考试】按钮用加大,标红的字体显示,并且此按钮本身要被加大拉长,放置于界面的中央位置。
而代表无关紧要功能的【关于】和【退出】按钮则分别放到界面的左下角和右下角。
其次是考试界面的设计,界面不进行过多的修饰,不加背景图片,不加特效字体,突出模拟考试系统的严谨和严肃。
在纯白的背景上由上到下分别显示题目的题干和选项,一些功能按钮则根据重要程度不同排放到不同的位置。
为了引起用户的注意,计时器要做的相对大一些,并且字体要用红色。
3.4运行环境
1.Android2.3.3系统模拟器或Android2.3.3系统及以上智能手机。
2.ARM(armeabi)处理器。
3.512M运行内存,200M机身内存,50MSD记忆卡。
4.3.2寸显示屏幕,QVGA(320*480)分辨率。
5.SQLite后台数据库支持。
4系统设计
4.1概要设计
4.1.1数据库的设计
本程序的题库文件需要用Android平台自带的SQLite数据库实现。
题库文件需要用SQLiteDeveloper提前设计并另存为*.db文件,再放到eclipse相应工程下的res/raw文件夹里,再利用相应语句导入Android应用程序所运行的机器上的SD卡内。
4.1.2UI布局文件的设计
1.main.xml
这个布局文件是本Android应用运行后用户看到的第一个UI,主要负责欢迎页面的编排布置,背景图片的按放,提示信息的显示和三个主要Button的布置,这三个Button分别是“开始考试”按钮、“关于”按钮和“退出”按钮。
“开始考试”按钮是主要功能按钮,对应的onClick方法会启动考试Activity,开始考试。
2.exam,xml
此布局文件实现模拟考试的UI编排,用到LinearLayout控件、TextView控件、RadioGroup控件、CheckBox控件、Chronmeter控件、RadioButton控件等,布置比较复杂。
4.1.3类的设计
1.MainActivity类
这个类是与main,xml布局文件对应的类,启动应用时会先执行此类里的方法,实现主Activity的调用并引用main,xml布局文件。
并实现与“开始考试”、“关于”和“退出”按钮对应的按钮onClick方法。
2.ExamActivity类
此类是与exam,xml布局文件相对应的类主要实现题目的随机抽取、题干和选项的显示、记录用户的答案、用户答题后给出正误提示、显示错题解析、评判分数、题目的一次显示、计时器的控制等功能。
3.DBAdapter类
此类是个辅助类,用于声明诸如DATABASE_PATH、DATABAS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 Android 平台 驾校 模拟考试 系统 docx