




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连东软信息学院本科毕业设计(论文)论文题目论文题目:基于Android的华容道游戏设计与实现系所:电子工程系专业:电子信息工程(嵌入式系统工程方向)学生姓名:学生学号:指导教师:导师职称:教授完成日期:2014年5月2日大连东软信息学院DalianNeusoftUniversityofInformation大连东软信息学院毕业设计(论文)摘要IV 基于Android的华容道游戏设计与实现摘要现今手机已经成为人们生活的一部分,手机不仅仅是作为传统意义上的通讯工具,而且随着智能手机的不断发展,现如今智能手机已经可以满足大多数人们的需要,大家可以通过手机玩网游,可以看视频、购物、办公等。手机相对于传统的娱乐工具,比如电脑,电视,智能手机具有携带方便,价格便宜等特点。谷歌公司推出的Android平台给移动终端的软件开发带来了划时代的意义。近年来,Android平台凭借其开源性、创新性,迅速被全球的移动开发商所喜爱。由于Android代码开源性的特点,激发了人们基于Android平台去开发各种新鲜好玩的应用程序,到现在Android应用程序已经呈现出多样性、创新性的特点。本设计就是基于Eclipse平台和AVD模拟器,运用Java语言来开发的一款Android应用程序。论文大体上可以分为三个部分,第一部分包括对关键技术的介绍,例如详细阐述了华容道游戏的算法设计,游戏背景音乐的实现;第二部分介绍了Android应用程序的开发过程,如软件系统需求分析,系统软件设计,还有软件系统的实现;第三部分介绍的是系统测试,包括测试用例的设计和测试用例的执行,得出最后的测试结论。本游戏除实现了传统华容道游戏的基本功能外,还添加了几项附加功能,比如游戏的背景音乐,视频录制等,以便更好地满足用户的需求。关键词:Android,AVD,Java,华容道游戏大连东软信息学院毕业设计(论文)AbstractDesignandImplementationofHuaRongDaoGameBaseonAndroidAbstractToday'smobilephonehasbecomepartofpeople'slife,notjustasthecommunicationtools,andwiththekeepingdevelopmentofsmartphones,nowsmartphonescanmeettheneedsofmostpeople,youcanplaygames,seevideo,shopping,andoffice,etc.Smartphonecomparedwithtraditionalentertainmenttool,suchascomputer,TV,smartphoneiseasiertocarry,andhasthelowprice.Google'sAndroidplatformhasbroughtthegreatsignificanceformobileterminalsoftwaredevelopment.Inrecentyears,theAndroidplatformwithitsopensource,innovative,isenjoyedbymobiledevelopersaroundtheworld.BecauseofthecharacteristicoftheAndroidcodeisopened,inspiredthepeopletodevelopallkindsoffunapplicationbasedontheAndroidplatform,untilnowtheAndroidsoftwarehaspresentadiversity,innovativefeatures.ThisdesignisbasedontheEclipseplatformandAVDsimulator,usingtheJavalanguagetodeveloptheAndroidapplication.Papergenerallycanbedividedintothreeparts,thefirstpartisusedtointroducekeytechnologies,suchasthedetailsaboutthegamedesign,andthegamebackgroundmusic;ThesecondpartintroducesthedevelopmentprocessoftheAndroidapplications,suchassoftwaresystemrequirementanalysis,systemsoftwaredesign,andtheanalysisofthesoftwaresystem;Thethirdpartisthesystemtest,includingtestcasedesignandexecutionoftestcases,finalpartistestconclusion.Inadditiontosomebasedfunctiononthegame,alsoaddedafewadditionalfunctions,suchasthebackgroundmusicofthegame,videorecordingandsoon,inordertobettermeettheneedsofusers.Keywords:Android,AVD,Java,HRDGame大连东软信息学院毕业设计(论文)目录目录TOC\o"1-3"\u摘要 IAbstract II第1章绪论 11.1课题研究背景与意义 11.2国内外移动互联网发展现状 11.3课题研究内容与方法 21.4论文组织结构 3第2章关键技术介绍 42.1Java与面向对象技术 42.2核心算法 42.3AVD虚拟模拟器 5第3章系统需求分析 63.1系统设计目标 63.2系统功能需求 63.3系统非功能需求 63.4系统开发环境 63.5系统可行性分析 63.5.1技术可行性 73.5.2经济可行性 7第4章系统设计 84.1体系结构设计 84.2软件设计 84.2.1UI界面设计 94.2.2功能模块设计 134.3软件系统的类设计 144.3.1实现多个界面互相切换 154.3.2PlayView类 154.3.3CtThread类 16第5章系统实现 175.1环境配置 175.2功能模块实现 175.2.1游戏开始模块 175.2.2游戏关卡模块 185.2.3游戏选项模块 205.2.4游戏说明模块 215.2.5游戏退出模块 215.3系统调试 22第6章系统测试 236.1测试概述 236.2测试用例 236.2.1测试案例一 236.2.2测试案例二 236.2.3测试案例三 236.2.4测试案例四 246.2.5测试案例五 24第7章结论 25参考文献 26致谢 27大连东软信息学院毕业设计(论文)-第1章绪论1.1课题研究背景与意义近两年,国内外移动终端市场发展异常迅速,不断有新型的手机生产商涌入市场,并且规模在不断壮大,比如国外以Apple,Samsung生产商为主,国内以华为,HTC,小米等手机生产商为主。目前,一些高品质的智能手机纷纷亮相,以其优质的硬件保障,时尚潮流的外观设计,使人们越来越对智能手机爱不释手。同时我们即将迎来4G的网络时代,将来会有越来越好的网络环境作为支持,我相信人们对移动终端,对移动终端应用的需求也会随之越来越广泛。智能手机有其便携,时尚,操作简单等优点,又有良好的网络环境作保障,这必将会带来更多的手机用户,这给未来的手机产业,网络产业,以及它的一些副产业比如终端游戏产业等带来了新的契机。中国手机市场,是由国内外诸多企业共同合作,共同努力把中国打造成为世界手机市场上的一个强国。为了满足众多的用户需求,中国手机市场正在不断提升自己的服务与创新,并且在不断引导软件开发商和软件开发人员根据用户的需求来进行开发。这样就会有丰富的,实用的软件被开发出来发布到软件下载平台,而不同的用户只需要可以根据自己的需求去软件平台下载自己需要的软件。这样一来整个市场就会呈现出一个良好的循环发展模式,开发者直接与用户发生了联系,由于手机终端的软件开发相对比较简单因此有些用户也可能是潜在的开发者,这样就降低了市场调研的成本,更有利于整个手机产业的发展。作为手机产业的副产业,我相信手机游戏在这样一个终端与网络不断发展的环境下,必然有一个好的发展前景。1.2国内外移动互联网发展现状我国移动网络行业的费用不断地降低,带宽不断地提高,网络业务不断创新和快速的发展。用户的需求也从简单的打电话,发短信等业务向多元化,多任务化,多媒体化发展,由于我国网络技术取得了突破性的进展,网络业务和服务也随之更加完善,这都促使了我国移动网络的快速发展。在我国,2010年移动互联网的收入量同比增加了66%,市场获得收入更是达到了633亿人民币,2009年到2011年的复合增长率超过了40%。由此可见,我国的移动互联网行业迎来了一个快速成长的时期。在不远的将来,中国互联网必将会有令世界瞩目的成就,到那时中国的移动互联网的覆盖率将超过互联网的覆盖率,可以断定移动互联网的飞速发展将会带来更大规模的经济产业。在未来,它创造的财富有可能是互联网创造的几十倍或者更多。由于我国移动互联网市场将迎来一次前所未有的大发展,移动网络已经成为最挣钱的行业之一。目前,这个行业已经吸引了大批的有志之士,和有远见的投资者。但是大家所采取的投资方式却大相径庭,其中最热门的投资应该就是对智能手机终端的投资,因为大批的投资者认为移动网络的完善给移动终端的发展提供了保障。其次,比较热门的投资就是手机终端的软件行业了,其中就包括手机游戏,手机视频播放器等等;还有其它一些基于移动设备上的地图导航,终端系统,电子商务等;除此之外,还有基于Android、iso等平台的软件开发,社交网络的建设等多种不同的方向。2010年我国公布的移动互联网投资项目量为16起,投资的金额为2亿美元左右,是近几年最多的一年。到2011年3月份,我移动互联网的投资项目量为7起,其中4起的投资额为1.2亿美元,差不多是上一年2010年全年的投资额。可以看出我国移动互联网的投资是越来越火热,而且移动市场在未来几年也会更加活跃。从上面的资料不难看出,我国在移动互联网领域有巨大的发展潜力,已经吸引了众多的国内外投资者来投资这个领域,这将促进我国移动互联网的进一步发展。2013年我国的移动互联网技术,服务、产品、投资、盈利、用户量等方便有了巨大的增长。在美国,移动互联网已经进入了快速发展的时期,从2010年到2011年使用移动网络终端的用户上升了30%,同期高于其它的国家。到目前为止依然呈现出不断快速发展的态势。依据2009年公布的数据显示,使用移动网路终端的用户数有了很大的提升,比2008年公布的数据上涨了70%左右。资料显示,在美国iphone手机在美国手机上网流量的份额已经占到了50%,android手机占到了35%的份额,从这两种手机流量占有量上可以看出用户对手机体验、性能、外观、程序设计等方面有了更高的要求。美国目前已经开通了4G网络的服务,这将会为用户提供更好的网络环境。根据美国的市场研究调查,不难看出美国移动互联网市场已经进入了一个鼎盛时期,美国的手机移动互联网已经融入到了美国人的日常生活中,成为不可或缺的一部分。现在移动终端源码的开源性和移动设备不断的更新升级,以及网络基础设施的不断完善,美国的移动互联网市场会有更大的发展。1.3课题研究内容与方法华容道游戏的创意取自我国的三国故事,是我国古老的益智游戏。在赤壁大战中曹操被蜀吴两国联军打败,逃至华容道这个地方,正好关羽就埋伏在这个地方,关羽为了报答当年曹操的知遇之恩放走了曹操,游戏的故事背景就是来源于此。华容道游戏被认为是我国传统的益智游戏,以其方阵的多变性,及其蕴含着的数学原理吸引了国内外大批的数学家来研究。人们一直在寻找一个最快捷的途径来破解该游戏,目前美国数学家寻找到的横刀立马的最优解为81步。华容道游戏的方阵是由二十个方格组成的棋盘,其中曹操占据四个小方格,五虎上将关羽,张飞,马超,赵云,黄忠各占据两个小方格,其余4个小兵各占据一个小方格。棋牌中有两个空着的方格,利用空着的两个小方格移动棋子,游戏的解法就是设法使用最少的步数把曹操从最初的位置移动到布局的出口,帮助曹操从出口逃走。游戏中只允许移动各个棋子,但不允许跨越棋子。游戏的关键点是占据四格的曹操和横排在棋牌中的关羽,至于其它的棋子可以根据自己的需要随意移动。华容道有许多不同的布阵方法,相应的也有许多不一样的解法,难易程度也就不一样,比如“身先士卒”,“火烧连营”,“四将连关”,“兵临曹营”,“兵分两路”等诸多布局。这次毕设实现了一个具有基本功能的华容道游戏,比如关卡的选择,游戏设置,但也做了一定的扩展比如添加了游戏背景音乐等。虽然华容道游戏看似简单,但是真正做到完善还需要我不断的努力。1.4论文组织结构论文一共分为7章,组织结构如下:第1章:介绍了课题的研究背景、意义,国内外移动互联网发展现状,以及课题研究内容与方法。第2章:Java技术,面向对象设计理念等进行概述。第3章:介绍了系统设计目标,功能需求,系统开发环境,还有系统可行性分析。第4章:介绍了体系结构设计,软件UI界面设计,功能模块设计等。第5章:介绍了系统开发环境配置,系统功能模块的实现,系统调试等。第6章:介绍了系统测试概述,测试用例设计等。第7章:对本论文做总结概述。
第2章关键技术介绍2.1Java与面向对象技术SUN公司在1990年月12开始关于Java语言的开发。最早是一个名叫帕特里克·诺顿的工程师在一个未来家用电器的项目中提出的,由于家用电器是基于嵌入式平台,工程师们发现使用C语言开发程序会占用大量的内存资源,而且由于C语言比较复杂容易发生错误,于是帕特里克·诺顿提议基于C语言重新开发出一种占用资源少,安全性高,比较简易的语言,这种语言被命名为Oak,橡树的意思。在1994年6月到7月间,Oak语言得到了进一步的发展,由于因特网的快速发展,工程师们意识到需要用浏览器来进行网络交互,此时Oak被运用到了万维网的开发,同时Oak被更名为Java。到1995年5月23日Java和HotJava浏览器第一次被正式公开发布。面向对象技术就是在进行软件开发的过程中对客观问题采用客观直接的办法来解决问题。比如说我们要生产一辆汽车,并不是先设计发动机,再设计车体,轮子,最后再设计地盘,而是我们把地盘,车体,轮子,发动机一起设计,最后再把它们组装成一辆汽车。对于他们之间如何进行协调工作,就是面向对象程序设计的基本思路。面向对象技术有抽象性、封装性、继承性和多态性特性。2.2核心算法通过使用一种搜索策略,用一部分状态空间即节点在全部状态空间即全部的节点中找到搜寻问题的解,也就是通过三元组来表示的状态空间求解的办法。它的的基本解题思路是把问题的起始状态即初始节点当作当前状态即当前节点,然后运用适当的操作符对它进行操作,生成一排子状态即子节点,然后去匹配子状态中是否有与目标状态即目标节点匹配的,如果匹配成功则说明搜索完成,如果没有出现则按此搜索策略从子节点再选出一个节点作为当前的节点重新搜索,直到搜索到目标节点,或搜索完所有的节点为止,表明搜索完成。我在此处使用的是广度优先搜索策略,因为对于有解的问题,广度优先搜素策略都能找到它的解。在华容道游戏中,寻找途径最少的情况下寻找它的最优解问题就是当前移动的棋子是它上一个节点对下一个节点的搜寻过程,其实也就是广度搜索的最短路程。应用广度优先搜索策略总是能够找到存在解的问题的最优解。在华容道的解法中,广度优先搜索是最为合适的搜索办法,因为华容道的布局变化多样,解法也是多种多样。其解法是,所有节点及其指向父节点的指针的反向指针构成一颗以初始节点为根节点的搜索树。从初始节点算起深度相同的节点统称为同层节点。广度优先搜索就是逐层对节点进行逐层搜索,直到找到目标节点为止。2.3AVD虚拟模拟器AndroidAVD模拟器给我们开发android程序带来了极大的方便,我们可以用它来模拟一个硬件平台,来测试应用程序在手机上是否能够正常运行。下面我介绍一下AVD的安装步骤:打开AVDManger,即Android的虚拟器管理工具。打开一周点击“New”按钮来新建一个虚拟器。然后在弹出的对话框中设置你的程序需要的运行参数,包括设备的详细参数,比如安卓的版本,内存的大小等等。如果不能新建一个虚拟器,说明你还没有安装好AVD,那么接下来介绍该如何新建一个模拟器。(1)首先需要打开SDK管理器。(2)打开SDK管理器,安装Android的版本包。(3)成功安装Android的版本包后就可以接着新建一个模拟器了。新的模拟器建立成功以后,来介绍一下该如何启动模拟器。打开“AVD”选中你新建的模拟器的name,然后点击“Start”按钮,这时候会弹出一个对话框,在新窗体中点击“Lanuch”启动虚拟器,之后会弹出一个新的窗口显示“摄像头设备选择”,然后选择你的摄像头,这样一来新的模拟器就建成功了。
第3章系统需求分析3.1系统设计目标华容道游戏主要包括分为三大功能模块:系统设置管理模块;游戏控制模块;系统说明模块。系统设置管理模块包括:声音设置、震动设置、提示步数设置、布局管理,其中布局管理子模块又包含布局添加、布局删除;游戏控制模块包括:选择难度、选择关卡、开始游戏,其中开始游戏子模块又包括棋子操作、进度保存、撤销、恢复功能、残局解算;系统说明模块包括规则说明。3.2系统功能需求进入到开始游戏主菜单,用户通过点击开始按钮来进入到游戏界面,这个界面显示的是游戏主界面的信息。操作游戏的几个基本按键都可以在游戏主界面中找到,其中包括一些基本的功能,比如获取游戏答案,移动步骤提示,游戏音乐的设置,撤销,重玩等几个功能。其次,在游戏主界面上还显示了当前关卡的最少步数,当前等级以及当前的步数等信息。用户点击游戏设置按钮就会进入到游戏设置的界面,界面中设置了一个滑块来控制背景音乐的音量的大小,用户可以来回拖动滑块来控制它。还有两个多选框,每一个多选框内又有两个按钮,用户可以通过点击这四个按钮来控制背景音乐的开关,和音效的开关。用户点击关卡按钮以后就会进入到关卡选择的界面,这个界面显示了各个关卡的信息,不同的关卡代表不同的布局,不同的布局又有不同的难易程度。用户点击相应的关卡就会进入到相应的游戏中去。另外,游戏关卡界面还实现了界面的滑动显示。用户点击关于按钮就会进入到游戏操作介绍的界面。这个界面用来告诉用户该怎么操作游戏。在界面上还添加了一个确认的按钮,用户可以点击它来退出游戏关于界面。3.3系统非功能需求本游戏系统性能稳定,成本低廉,功耗低,可安装在任何android手机平台上运行。3.4系统开发环境本系统软件开发采用Java语言,基于Eclipse开发平台,用(AVD)AndroidVirtualDevice测试软件。3.5系统可行性分析由于手机的操作系统更加完善,硬件性能逐步提高,智能手机越来越便宜、普及,所以智能手机已经成为人们办公娱乐、学习、通讯、收发电子邮件等日常生活不可或缺的一部分,而益智游戏也在逐步占据移动终端手机的市场。3.5.1技术可行性Android游戏需要掌握java开发语言和Android系统,另外对于算法也要有所掌握。3.5.2经济可行性随着现代科技的进步与发展,移动终端的生产成本也逐渐降低,使智能手机得到广泛的普及,用户只需要在一台普通的智能手机上便可以安装此游戏,享受此游戏带来的乐趣。第4章系统设计4.1体系结构设计如图4.1所示,安卓应用程序可以分为三大层次结构,分别是UI设计层,游戏控制层,和数据管理层。UI设计层,这层主要包括了视图对象和图层对象。视图对象的主要内容是制作图层对象的键盘响应事件,处理线程等。图层对象用来定义界面的高度、布局、移动规则等。游戏控制层,在Android游戏开发中,通常可以通过Activity来控制游戏的进程,比如说怎么进入到游戏主页面,加载游戏,进入到关于界面,以及开始,结束游戏等操作都需要Activity来操作。数据管理层,用来保存游戏的数据,它的作用主要是用来保存数据常量,保存当前的游戏进度,在游戏退出的时候保存游戏当前状态等。UI设计层UI设计层游戏控制层游戏控制层数据管理层数据管理层图4.1系统体系结构4.2软件设计Android应用程序是由不同的组件组合成的,它们是Activity,Service,BroadcastReceiver,和contentprovider等组件。同时,还需要Intent的消息组件来实现组件之间的通信,在设计Android应用程序的时候并不需要所有的组件,我们只需要使用其中的几个组件来完成。这里需要注意的是所有被用到的组件都必须AndroidManifest.xml文件中去申明,否则在运行程序的时候会报错。4.2.1UI界面设计图4.2主界面如果4.2所示,主界面的开始,关卡,选项,帮助,退出运用到的是线性布局,ImageButton控件。功能:点击开始按钮就会进入到游戏主界面Activity。点击关卡按钮进入到关卡选择界面。点击选项按钮进入到系统设置。点击关于进入到游戏说明界面。点击退出按钮,退出游戏。图4.3游戏页面如图4.3所示,游戏界面运用到了线性布局,ImageButton,TextView控件。功能:实现的主要功能有,返回上一步,获取答案,重玩本关,显示当前关数,显示当前步数,显示最佳成绩。图4.4关卡选择模块如图4.4所示,关卡选择界面运用的线性布局,ImageButton,GridView控件。功能:选择可以选择不同难以程度的关卡。图4.5设置界面如图4.5所示,游戏设置界面运用到的是线性布局,RadioGroup,滑块控件。功能:调节音量,控制移动声音和背景音乐。图4.6游戏说明界面如图4.6所示,游戏说明界面运用到了线性布局Textview,Button控件。功能:给用户介绍如何操作游戏。4.2.2功能模块设计系统软件功能框图,如图4.7所示。图4.7系统软件功能框图游戏主界面包括对主界面布局的绘制,通过点击相应的功能选项进入对应的响应事件。开始游戏包括游戏界面的布局绘制,通过点击返回上一步,撤销,获取答案,移动棋子等按钮得到相应的按键事件。选项包括游戏设置界面的布局绘制,通过滑块,按钮控件来设置背景音乐的大小和开关背景声音,棋子移动的声音来得到相应的响应事件。关于包括游戏帮助界面的布局绘制,还有通过点击按钮得到相应的按键事件退出界面。点击退出按钮,得到相应的按键事件,退出游戏。4.3软件系统的类设计以下是几个主要类设计,如表4.1所示。表4.1软件系统的类设计序列号类名使用说明1HelpActivity类用来实现游戏关于界面的类2HRDActivity类申明游戏界面的类3AnsActivity类获取游戏答案的类4WelcomeActivit类实现游戏欢迎界面的类5SLActivity实现游戏选择的类续表4.1软件系统的类设计序列号类名使用说明6ConfActivity类游戏设置的实现7GLevel类关卡的信息并且可以设置关卡信息8N类常量类,定义了各个常量9GameView类游戏的主类10Map类地图信息类11FileHelper类应用了SharedPreferred来保存各种游戏信息12CtThread类响应用户操作的线程13DraThread类绘制画布14RecThread类获取积分的类15Model类实现棋子的移动4.3.1实现多个界面互相切换可以多次继承Activity,来使用户通过多个按键进行游戏界面的切换。以下是类的具体实现,如表4.2所示。表4.2界面的实现序列号类名使用说明1publicclassHelpActivityextendsActivityHelpAcitivtty继承了Activity类用来实现游戏帮助的界面2publicclassAnsrActivityextendsActivityAnsActivity继承了Activity类用来实现获取答案的界面3publicclassConfActivityextendsActivityConfAcitivity继承了Activity类用来实现游戏设置的界面4publicclassHRDActivityextendsActivityimplementsOnClickListenerHRDActivity继承了Acitivity类并添加一个点击监听的接口5publicclasswelcomeActivityextendsActivitywelcomeActivity继承了Activity类实现游戏欢迎界面的界面。6publicclassSLActivityextendsActivityimplementsOnGtListener,OnTcListenerSLActivity继承了Activity类实现了选择游戏等级的界面。并添加两个接口OnGtListener,OnTcListene4.3.2PlayView类PlayView类是一个视图类,根据主类提供的图片的坐标,图片的监听事件,关卡数据,棋子布局等数据来实现游戏界面,这里不考虑游戏的算法,不考虑如何具体实现。只是考虑游戏界面需要用到什么数据,有哪些接口等。同时在这个类里定义了游戏设置功能的一些数据,包括游戏背景音乐的开关,音量的大小等等。下面是类中部分类函数的设计,如表4.3所示。表4.3PlayView类的实现序列号属性和方法使用说明1publicclassPlayViewextendsSurfaceViewimplementsSurfaceHolder.Callback继承了SurfaceView,主要用于游戏界面的开发类2privatevoiddrawforTest(Canvasc)界面布局设置,背景颜色设置3publicvoidgameVin()获取游戏是否通过的数据4publicvoidrefreshStep()刷新移动的步数5publicvoiddoDraw(Canvascanvas)设置图片的布局4.3.3CtThread类游戏控制类的是整个华容道游戏的核心,该类实现了华容道游戏的算法,本系统主要是通过CtThread类来实现,如表4.4所示。表4.4CtThread类的实现序列号属性和方法使用说明1publicclassCtThreadextendsThreadCtThread类继承了Thread用来实现游戏的控制2publicCtThread(PlayViewplayView)定义CtThread类的一个构造函数3privateintsearchLeft(intm)碰撞检测,向左检测4privateintsearchRight()碰撞检测,向右检测5privateintsearchDown()碰撞检测,向下检测6privateintsearchUp()碰撞检测,向上检测7privatevoidmoveup(intvalue)向上移动棋子8privatevoidmoveLeft(intvalue)向走移动棋子9privatevoidmoveRight(intvalue)向右移动棋子10privatevoiddownRight(intvalue)向下移动棋子大连东软信息学院毕业设计(论文)第5章系统实现5.1环境配置下载JDK安装包,并安装JDK。下载Eclipse应用程序,并安装。3.下载并安装AndroidSDK,运行CMD窗口,并输入android—h点击回车,如果显示Globaloptions:-h--help
Thishelp.
-s--silent
Silentmode:onlyerrorsareprintedout.
-v--verbose
Verbosemode:errors,warningsandinformationalmessagesareprinted.表明SDK已经安装成功,否则不会显示关于AndroidSDK的信息。4.下载并安装ADT,即AndroidDevelopmentTools(ADT),谷歌为开发Android制作的开发工具包,可以基于Eclipse来开发和调试Android应用程序。5.2功能模块实现系统可分为三层:1)UI设计层;2)游戏控制层;3)数据管理层。把系统分为三层,然后一层一层的分析实现,这样一来逻辑比较清晰,也不容易出错。即使出错也只需要我们修改其中的一部分,比如需要美化界面我们只需要去修改UI设计层的程序;如果需要给游戏添加或删除某一项功能,我们只需要去游戏控制层修改;如果游戏的数据管理出现问题我只需要去数据管理层来修改程序。这样划分以后,以便于我们维护程序,扩展功能,也使我们程序逻辑结构看起来更加清楚。本系统也可以分为5大模块,即游戏开始模块,游戏关卡模块,游戏选项模块,游戏关于模块,和游戏退出模块。以下是5大功能模块的实现:5.2.1游戏开始模块图5.1游戏开始界面如图5.1所示,游戏开始模块是整个游戏的主模块,在这个模块中基本实现了玩家对游戏的基本操作,通过Intent来接收传入的参数,又通过多个Thread来实现背景音乐,音效,录像等功能的实现,部分伪代码:intent=this.getIntent();Stringlevel=intent.getStringExtra();gameView=newPlayView();rt=newThread(gameView);LinearLayoutA=(LinearLayout)findViewById();A.addView(gameView);rt.class();棋子移动是华容道游戏最主要的功能,在该游戏系统中使用CtThread类来响应用户的操作。棋子是否可以移动,并获取可移动的方向于Model类中。棋子的移动过程以及判断相应的手机触摸事件在onTouchEvent中实现,其过程如下:执行MotionEvent.ACTION_down动作来获取玩家按下动作的坐标x,y,利用坐标判断玩家按下时选中的棋子。执行MotionEvent.ACTION_up动作来判断是否有棋子被选中,如果同时有其它的棋子被选中则不做任何操作,如果有棋子被选中则继续进行。棋子被选中时,根据抬起来时候的坐标x,y和按下时的坐标,获取横向以及纵向的位移向量Xa,Yb。根据向量Xa,Yb来判断玩家将棋子移动的方向,伪代码如下:if(Xa>Yb){if(Xa>0)oveMethod.Right;//向右elseMoveMethod.Left;//向左}Else{if(Yb>0)MoveMethod.Down;//向下elseMoveMethod.Up;//向上}5.2.2游戏关卡模块图5.2游戏主界面 图5.3关卡选择界面如图5.2所示,首先进入关卡选择界面。游戏关卡模块一共为玩家提供了21种不同难以程度的关卡,如图5.3所示。用户可以根据自己的需要来挑战不同的关卡。此模块通过对GridView添加触碰监听器,然后再通过Intent来启动相应的关卡Activity。部分伪代码:gridView.setOnItemClickListener(newOnItemClickListener(){ publicvoidonItemClick(){Intentintent=newIntent();intent.putExtra();ntent.putExtra();startActivity(intent);Activity.this.finish();}});5.2.3游戏选项模块 图5.4游戏选项界面如图5.4所示,游戏选项模块为用户提供了游戏的背景音乐和音效的设置功能。玩家可以根据自己的需要来调节音量的大小,移动声音的关闭和背景音乐的关闭。此模块是通过给五角星的控件设置监听器,然后实现监听的方法来实现音量大小的调节。通过对按钮设置监听器来,实现该监听的方法来实现对背景音乐和音效的控制。以下为部分伪代码:soundset.setListener(newRatingBar.BarChangeListener(){publicvoidmathod(){startactivity(); }});5.2.4游戏说明模块图5.5游戏说明界面如图5.5所示,游戏关于模块为玩家提供了游戏操作说明,新手可以根据游戏说明来进行游戏操作。此模块的实现很简单只需要通过Textview就可以实现。以下是部分伪代码:setContentView(R.layout.about);abcontent=(TextView)findViewById(R.id.abcontent);//实例化确定按钮btn=(Button)findViewById(R.id.btn);//给内容文本框填充文字内容abcontent.setText();btn.setOnClickListener(newView.OnClickListener(){}5.2.5游戏退出模块游戏退出模块实现了玩家可以正常退出游戏的功能。通过给退出按钮添加一个监听事件,调用finish()方法来退出游戏,如图5.6所示。图5.6退出游戏5.3系统调试根据系统的三个层次,即UI设计层,游戏控制层,数据管理层来进行系统调试,调试结果如表5.1所示。表5.1系统调试模块预期结果实际结果UI设计层可以通过按钮来切换界面能够通过不同的按钮来切换界面游戏控制层游戏中的图片可以显示,游戏声音,音量等的控制可以实现界面中的图片可以实现,游戏声音,音量等可以控制数据管理层华容道游戏的核心算法可以实现算法可以实现,游戏可以成功过关大连东软信息学院毕业设计(论文)第6章系统测试6.1测试概述华容道游戏是基于谷歌的Andriod平台开发的一款益智游戏。本次主要是对游戏的五大模块进行功能测试,分别是游戏开始界面的功能测试,关卡界面的功能测试,游戏设置界面的功能测试,游戏关于界面的功能测试,游戏退出功能的测试。测试的目的主要是为了保证游戏的各个模块可以如期的工作,保证各个模块可以为用户带来流畅的游戏体验。本次游戏测试采用的是黑盒测试的方法。6.2测试用例6.2.1测试案例一游戏开始界面的功能测试,如表6.1所示。表6.1开始界面的功能测试步骤说明结果Step1打开游戏主界面游戏主界面应该成功被打开Step2点击开始按钮开打游戏开始界面游戏开始界面应该成功被打开Step3移动棋子点击返回上一步按钮棋子应该可以返回上一步Step4点击获取答案按钮系统应该可以给玩家提示解法Step5点击重玩按钮本局游戏可以重新开始通过测试游戏开始界面的所有功能都能实现。6.2.2测试案例二关卡界面的功能测试,如表6.2所示。表6.2关卡界面的功能测试步骤说明结果Step1打开游戏主界面游戏主界面应该成功被打开Step2点击关卡按钮进入到关卡选择界面关卡选择界面应该能被成功打开Step3进入到关卡选择界面不同布局,不同难易程度的关卡都可以被成功显示出来Step4点击每一个关卡按钮进入到相应的游戏布局可以进入到不同的关卡游戏通过测试游戏关卡界面的所有功能都实现。6.2.3测试案例三游戏设置界面的功能测试,如表6.3所示。表6.3设置界面的功能测试步骤说明结果Step1打开游戏主界面游戏主界面应该成功被打开Step2点击选项按钮进入到游戏设置界面游戏设置界面成功被打开续表6.3设置界面的功能测试步骤说明结果Step4点击音乐,音效的开关按钮游戏的背景音乐,和移动棋子的声音可以被开闭Step3拖拉滑块控制音量的大小游戏的背景音乐的音量大小可以被控制通过测试游戏设置界面的所有功能都实现。6.2.4测试案例四游戏说明界面的功能测试,如表6.4所示。表6.4说明界面的功能测试步骤说明结果Step1打开游戏主界面游戏主界面应该成功被打开Step2点击选项按钮进入到游戏说明界面游戏说明界面能成功被打开Step3进入到游戏说明界面游戏使用说明能被成功显示Step4点击确定按钮游戏说明界面能成功退出通过测试游戏说明界面的所有功能都实现。6.2.5测试案例五游戏退出功能测试,如表6.5所示。表6.5退出游戏功能测试步骤说明结果Step1返回游戏主界面成功返回游戏主界面Step2点击退出按钮游戏能被成功退出通过测试游戏退出功能能被实现。第7章结论当前移动终端游戏市场越来越火热,移动终端的游戏开发商展开了激烈的竞争,为了赢得更多的客户,各个开发商就得不断提高自己产品的质量,趣味性,能否获得丰富的市场份额促使商家不断根据市场需要来开发新的产品。华容道这款游戏就是一款有趣的,得到广大用户喜欢的益智游戏。本设计通过广度优先搜索策略,碰撞检测等算法实现了华容道游戏,也实现了一些基本的功能,包括移动棋子,通关检测,背景音乐,音效设置,关卡选择等。其中也存在几个问题,比如关闭背景音乐后不能重新打开等,系统还需进一步完善。除此之外在做这次毕业设计的过程中我学到了很多东西,比如说在调试程序的过程中,会遇到各种各样的问题,然后我不得不去为解决这些问题上网查询资料,请教老师问同学,这个查错的过程就迫使我不断去学习新的东西。通过完成此次毕设也使我积累了不少项目经验,比如编写代码,测试程序,编写项目报告等,这个过程使我对Java语言的认识和运用进一步加强,对Eclipse开发平台进一步了解。最重要的是通过此次毕设我也总结出了一个学习经验,只有动手去实践才会动脑去思考,只有去思考才能发现其中的问题,发现问题才会去想办法解决问题,这样一来即加强了动手能力,也可以不断完善自己的理论知识。参考文献[1]BruceEckel.Java编程思想(第4版)[M],机械工业出版社,2007[2]埃克尔.JAVA编程思想(第4版)[M],机械
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商场店面转让合同范本
- 公司劝退员工合同范本
- 共同管理合同范本
- 商贸公司策划合同范本
- 水费收取维护合同范本
- 吉林省吉林市蛟河市2023-2024学年八年级上学期期末考试数学试卷(含解析)
- 中国传统节日-端午节73
- 2025年生猪交易合同标准范本
- 2025版租赁合同样书
- 语文课程标准与教材研究知到课后答案智慧树章节测试答案2025年春内江师范学院
- 2025内蒙古能源集团智慧运维公司社会招聘(105人)笔试参考题库附带答案详解
- 公共卫生应急管理调研报告范文
- 【9物一模】安徽合肥瑶海区2025年中考物理一模试卷
- 2025-2030中国食品灭菌设备行业市场发展趋势与前景展望战略研究报告
- 2025年全国中医医师定期考核中医专业理论知识考试题库及答案(共六套)
- 餐厅点菜技巧培训
- 大风天气施工专项方案
- 华能山东石岛湾核电限公司2025年上半年应届高校毕业生招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025新人教版七年级数学下册教案教学设计综合与实践2:白昼时长的规律探究(有反思)
- 高新技术产业融资数据对比表
- 综合实践项目4 饲养家蚕了解我国的养蚕历史(教学设计)
评论
0/150
提交评论