欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于安卓推箱子游戏的设计与实现.doc

    • 资源ID:4865066       资源大小:1.31MB        全文页数:28页
    • 资源格式: DOC        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于安卓推箱子游戏的设计与实现.doc

    1、 毕 业 设 计(2016届)题 目:基于安卓推箱子游戏的设计与开发 学 院 XXxxXX 专 业 XXxxX 年 级 XXxxXX 学生学号 XXxxXX 学生姓名 XXxxXX 指导教师 XXxxXX XX年XX月XX日摘 要如今,伴随着Google Android操作系统的盛行,基于Android SDK的系统开发和基于Android应用的开发等已倍受大家关注. 但是目前基于Android游戏开发的市场还是不够成熟的,因而一款休闲娱乐、锻炼思维且适应于Android操作系统的游戏必将成为主流. 在这个快速发展的社会坏境中,生活节奏飞快,人们需要适当的慢下来,本篇文章是结合Eclipse

    2、SDK开发平台开发的一款基于安卓平台的推箱子小游戏. 该游戏主要分为初始化模块,界面模块,数据存储模块,功能模块及游戏控制模块. 玩家通过控制小人的移动来推动箱子,将所有箱子都推到目的地从而过关. 每关的难易程度不同,可保持玩家对游戏的新鲜感,本游戏不仅是适合各类人群休闲娱乐的活动,还有助于提高人们思考问题能力与想象力,改善思维方式,拓展思维. 关键词:安卓 推箱子 EclipseAbstract Recently, along with the prevalence of Google Android operating system, the public has immensely co

    3、ncerned on the development of applications that based on Android SDK systems and Android application. In this rapid development of social environment, the fast pace of life, people need to be appropriate to slow down . This issue is a Sokoban game, which is developed for Android system and is invent

    4、ed based on the combination of Eclipse SDK development platform. players have to control the movement of a turtle to push a box and to put all boxes into the right destination. Particularly, the difficulty of each level is separated differently, which maintain the freshness of the game . The game is

    5、 not only suitable for all kinds of people for leisure time, but also can help people to expand imagination and to improve creative thinking. Key Words:Android PushBox Eclipse数学计算机学院 宁夏大学本科毕业设计目录1. 绪论11.1 研究背景和意义11.2 国内外研究状况21.3 本文主要工作内容22. 相关技术简介32.1 Android技术32.1.1 应用程序32.1.2 Java开发方面42.1.3 C/C+开发

    6、方面42.2 Android工作原理42.2.1 硬件抽像层42.2.2 系统内核42.2.3 安全权限机制52.3 系统开发环境说明52.3.1 Android的开发环境说明52.3.2 开发环境53. 系统分析63.1 系统设计目标63.2 系统可行性分析63.2.1 技术可行性分析63.2.2 操作可行性分析63.3.3 经济可行性分析63.3 系统功能需求概述73.4 系统设计规则73.5 业务流程设计74. 游戏的设计与实现94.1 主菜单界面模块设计94.2 游戏界面设计94.3 设计方案115. 游戏功能设计说明及代码135.1 对键盘的抬起按下接听的实现135.2 主菜单界面的

    7、实现145.3 游戏地图的实现155.4 游戏中关于人物的实现175.5 屏幕滚动的实现186. 系统测试196.1 键盘的操作和功能测试196.2 箱子放置到指定位置时变色显示功能的测试演示206.3 游戏是否通关判断功能的测试演示207. 结 论22参考文献23谢 辞241. 绪论1.1 研究背景和意义本课题来源于一款来自日本的古老游戏推箱子,其设计目的是训练人的逻辑思维能力. 游戏场景一般是设定在空间狭小的仓库中,要求把箱子摆放到指定位置. 稍不小心就会出现箱子无法移动或者通道被堵住的情况,这就要求玩家巧妙的运用有限的空间和通道,合理的安排箱子的位置和移动次序才可能完成任务. 但任务的完

    8、成还需要玩家头脑清晰,在最少的步骤之下完成所有箱子的定向移动. 这就需要玩家开动脑筋,在大脑中模拟游戏中人物的行走路线. 而推箱子游戏是目前比较流行的游戏之一,很多操作系统或者流行软件都会带有这种游戏. 它既能锻炼思维的严密性,又有很多乐趣. 我个人也比较喜欢玩这个游戏,因此,我就借这个机会将这个推箱子游戏用安卓语言实现了出来,然而随着计算机游戏的发展,很多编程爱好者基于该游戏的思想开发了出各种版本、各种类型的推箱子. 这其中也包括很多手机版本的实现,伴随着手机与计算机的普及,很快推箱子游戏便进入了千家万户. 推箱子游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎. 本文基于Androi

    9、d技术和eclipse SDK开发环境, 开发了一个操作简单、界面美观、功能较齐全、可在Android SDK 2. 2平台上运行的推箱子游戏. 整个游戏包含了两个公共类,主菜单界面相关类,游戏界面相关类,在这个游戏的设计过程中,可以加深我对安卓语言的应用,提升了我的代码编程能力,在整个游戏的开发过程中我查阅了很多资料,请教了好多同学,开发这个游戏增强了我的动手能力. 通过该游戏的设计过程,培养了我的结构化程序设计的思想,加深对安卓语言基本语言要素和流程结构的理解,针对安卓语言中的重点和难点内容进行了训练,让我独立完成有一定工作量的程序设计任务,得到软件工程的综合训练,提高了我解决实际问题的能

    10、力. 1.2 国内外研究状况Android是由Google为首的OHA(Open Handset Alliance)推出的一款开放的嵌入式操作系统平台,从2008推出的android SDK1. 0到现在,Android SDK的最新版本已经升级到了最新的2. 3,Android正以前所未有的速度聚集着来自世界各地的开发者,越来越多的创意被应用到Android1应用程序的开发中,大有席卷整个手机产业的趋势. 说到Android系统,Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正

    11、开放和完整的移动软件. Android 的核心系统服务依赖于 Linux 2. 6 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型. 由于Android带有相当浓郁的Linux血统这也就意味着他拥有开源Linux的众多优点:安全、运算速度快、易于开发等等. 正因为Android具有上述的优点,所以它在国内具有相当强劲的竞争优势. 青年网络的主要负责人潘长华先生说到:Android作为一款十分优秀的移动开发平台十分适合国内的开发环境. 尤其是中小企业开发团队低成本以及源代码的分享可以为企业节省大量资金,这对于中小企业来说无疑是最大的诱惑. 青年网络推出的星网睿话就是国内成功的Andro

    12、id开发产品. 同时一个资深的Android开发爱好者告诉记者:如果你是个人开发爱好者,那么Android就是Google为你量身打造的,放弃闭源的种种吧,开源才是王道,Android才是未来的主宰. 伴随着Google Android操作系统的盛行,国内外的开发团队也逐渐的壮大起来了,基于Android SDK的系统开发,基于Android应用的开发等已逐渐倍受大家关注,而手机游戏开发历来是移动开发中分量最重的部分,面对如此火爆的Android市场自然也不甘示弱,由于Android的应用层开发是基于Java的开发,所以必有其可以快速移植J2ME开发的游戏的优势,但是移植的游戏必定也不能发挥A

    13、ndroid操作系统独特的特性,所以目前基于Android游戏开发的市场还是不够成熟的,面对这种情况,在了解AndroidSDK基础上,我打算开发一款完全适应于Android操作系统的推箱子益智游戏,此游戏采用OpenGL技术,实现2. 5D斜视角的立体视角,采用SQLite轻量级数据库存储技术等质在为Android量生打造一款独特的游戏. 1.3 本文主要工作内容本文首先对系统所涉及到的基础理论知识进行阐述,并在此基础上进行了系统分析. 系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善的被设计出来,就必须先进行调查研究. 在系统调查的基础上,对新系统的功能进行系致的分析,

    14、从而才能够开发出完整的系统设计. 本平台利用了现在比较广泛的安卓语言实现的. 其次考虑到系统实施的可行性,在软件方面我选择了如今比较流行的Android来进行开发管理平台的设计,使用 Eclipse进行开发,Eclipse是非常成熟的开发工具,因此无论在可用性还是可靠性方面都毋庸置疑. 2. 相关技术简介2.1 Android技术Android是一种以linux为基础的开放源代码操作系统2,主要使用于便携设备. 目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”. Android操作系统最初由Andy Rubin开发,最初主要支持手机. 2005年由google收购注资,并组建开

    15、放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上. Android的主要竞争对手是苹果公司的iOS以及RIM的Blackberry OS. 2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一. 2012年2月数据,Android占据全球智能手机操作系统市场52. 5%的份额,中国市场占有率为68. 4%. 并且Android支持多种操作系统3-4. Android的系统架构和其它操作系统一样,采用了分层的架构. android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层. Android是以Linux为核心的手机操作平

    16、台5,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统. 在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C+作为编程语言来开发应用程序,也可使用SL4A来使用其他各种脚本语言进行编程(如:python、lua、tcl、php等等),还有其他诸如:QT(qt for android)、Mono(mono for android)等一些著名编程框架也开始支持An

    17、droid编程,甚至通过MonoDroid,开发者还可以使用C#作为编程语言来开发应用程序. 另外,谷歌还在2009年特别发布了针对初学者的Android Simple语言,该语言类似Basic语言. 而在网页编程语言方面,JavaScript,ajax,HTML5,jquery、sencha、dojo、mobl、PhoneGap等等都已经支持Android开发. 2.1.1 应用程序早期的Android应用程序开发,通常通过Android SDK(Android软件开发包)下使用Java作为编程语言来开发应用程序,但通过不同的软件开发包,则使用的编程语言也不同. 例如开发者可以通过Andro

    18、id NDK(Android Native开发包)使用C语言或者C+语言来作为编程语言开发应用程序. 同时谷歌还推出了适合初学者编程使用的Simple语言,该语言类似微软公司的Visual Basic语言. 此外,谷歌公司还推出了Google App Inventor开发工具,该开发工具可以快速地构建应用程序,方便新手开发者. 2.1.2 Java开发方面Android支持使用Java作为编程语言来开发应用程序,而Android的Java开发方面从接口到功能,都有层出不穷的变化. 考虑到Java虚拟机的效率和资源占用,谷歌重新设计了Android的Java,以便能提高效率和减少资源占用,因而与

    19、J2ME等不同. 2.1.3 C/C+开发方面早期的Android开发只支持Java作为编程语言开发应用程序,因而使得其他语言开发者只能望而却步. 2010年4月,谷歌正式对开发者发布了Android NDK,NDK允许开发者使用C/C+作为编程语言来为Android开发应用程序,初版的NDK使得开发者看到了C/C+在Android开发中的希望. 但是,当前版本的NDK在功能上还有很多局限性:NDK并没有提供对应用程序生命周期的维护;NDK也不提供对Android系统中大量系统事件的支持;对于作为应用程序交互接口的UI API,当前版本的NDK中也没有提供. 但是相对于初版的NDK,现在的ND

    20、K已经进行了许多重大的功能改进. 由此可见,NDK仍然需要完善和发展,相信未来随着NDK的发展,NDK可以做得更多更好. 2.2 Android工作原理2.2.1 硬件抽像层Android 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块. HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展. HAL stub 是一种代理人(proxy)的概

    21、念,stub 是以 *. so 档的形式存在. Stub 向 HAL“提供”操作函数(operations),并由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 这些操作函数. HAL 里包含了许多的 stub(代理人). Runtime 只要说明“类型”,即 module ID,就可以取得操作函数. 2.2.2 系统内核Android 是运行于 Linux kernel之上,但并不是GNU/Linux. 因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK

    22、、Pango及Glibc等都被移除掉了. Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等. Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 userspace,使得Linux driver 与 Linux kernel彻底分开. bionic/libc/kernel/ 并非标准的kernel header files. Android 的 kernel header 是利用工具由 Linux kernel header 所产生的,这样做是为了保留常数、数据结

    23、构与宏. 2.2.3 安全权限机制Android本身是一个权限分立的操作系统. 在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID). 系统的各部分也分别使用各自独立的识别方式. Linux就是这样将应用与应用,应用与系统隔离开. 系统更多的安全功能通过权限机制提供. 权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问. Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作. 一款应用应该根据自身提供的功能,要求合理的权限. 用户也可以分析一款应用所需权限,从而简单判定这

    24、款应用是否安全. 如一款应用是不带广告的单机版,也没有任何附加的内容需要下载,那么它要求访问网络的权限就比较可疑. 编辑本段系统组件Android开发四大组件分别是:活动(Activity): 用于表现功能. 服务(Service): 后台运行服务,不提供界面呈现. 广播接收器(BroadcastReceiver):用于接收广播. 内容提供商(Content Provider): 支持在多个应用中存储和读取数据,相当于数据库. 2.3 系统开发环境说明2.3.1 Android的开发环境说明为了学习Android的 UI和功能,我们可以通过Android Virtual Device(AVD)

    25、来实现. AVD是Google提供给开发人员来调试他们开发的应用程序的,它可以运行在我们的PC机上,提供与真实手机形同的UI和操作方式,只是底层的硬件驱动不同. 我们可以用鼠标代替手机在AVD上实现点、划、按等触摸操作. 实现这一切的前提是我们需要搭建一个Android的开发环境. 2.3.2 开发环境开发所用操作系统:Windows 7 64位IDE:Eclipse开发语言:安卓开发所用插件:ADT 12. 0. 0SDK:Android SDK 2. 2,JDK 1. 6及以上办公软件:Office 2007 Office Visio20033. 系统分析3.1 系统设计目标基于安卓版推箱

    26、子游戏的具体开发目标为:(1)完成游戏菜单的设计,实现菜单上按钮功能. (2)设计游戏地图,并将建筑物、箱子、人物在地图中设置好(3)主角不能穿过箱子;(4)箱子数量和目标位置数量相等(但每个箱子并不和唯一的目标位置一一对应);(5)主角可以移动和推动木箱(响应键盘方向键);(6)主角只能往前推动箱子,不能向后或者向侧面拉箱子;(7)主角不能同时推动两个箱子;(8)箱子移动方向正前方紧挨墙壁,不可推动;(9)将所有箱子推到设定位置则通过本关,自动进入下一关卡. 3.2 系统可行性分析3.2.1 技术可行性分析在策划推箱子游戏时,首要考虑到要设计一个优美的游戏界面,操作起来更加人性化,即玩家可以

    27、用键盘的上、下、左、右键控制人物的移动位置,在画面方面也要更加清新,该游戏是一个轻量级的益智游戏,不存在复杂的情节,做的主要工作为设计游戏各关仓库的形状、大小、可通过区域、各关中箱子的初始位置与目的地. 上述种种都可以用Android原因来实现. 在编写程序是需要上网搜集了游戏中要用到的图片、声音等,收集一些有用的素材. 3.2.2 操作可行性分析本游戏只需要玩家操作四个键位即上下左右四个键位来控制游戏中人物的动作,操作简单易懂,对玩家来说不需要高深的计算机专业知识,只要认识汉字,懂得开关游戏,就可以对系统进行使用. 3.3.3 经济可行性分析由于游戏属于安卓版本小游戏,语言平台是开放的,编译

    28、器也是学生学习版本不需要交钱,整个游戏并不算太大,因此开发成本不算太高. 整个开发过程由一个人参与,只需要一台PC机,就可以实现全部的开发任务. 由于PC机是我自己所有的,而且无需专门升级硬件;而各种软件,又是能够在网上免费下载的,因此,整个开发成本可以说是非常的低廉,这也为以后进一步完善游戏提供了非常大的方便. 在使用成本上,用户只需要拥有一部手机,安装本游戏APK就可以使用本游戏,无需付出任何代价,而且对手机的硬件的需求也不是很高,软件方面也没有特殊的需求,易于推广和使用. 因此,从经济可行性分析来看,这个游戏完全是可行的. 3.3 系统功能需求概述基于安卓的推箱子小游戏运用于手机端,手机

    29、端实现了打开游戏、进入游戏列表,开始游戏、开关声音、游戏帮助、退出游戏四项功能. 进入游戏以后利用上下左右四个键控制游戏,进入游戏以后按下左下角有退出按钮,游戏会退回到菜单页面. 3.4 系统设计规则无论哪个游戏都要有它自己的设计规则. 该游戏也一样,它的主要设计规则有:简单性:在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个系统来说是非常重要的. 针对性:该系统设计是基于安卓版推箱子小游戏的设计与实现,所以具有专业突出和很强的针对性. 实用性:该游戏操作简单,打开即玩,具有良好的实用性. 3.5 业务流程设计业务流程分析阶段要调查系统所涉及每个环节的管理业务活动,掌握所有管理业务的

    30、内容、作用和信息的输入、输出、数据存储以及信息处理方法和过程,并根据业务的实际处理步骤和过程,绘制出业务流程图. 业务流程图(Transaction Flow Diagram,TFD),它是用一些规定的符号及连线来表示某个具体业务处理过程的图表,即描述系统内各单位、人员之间的业务关系、作业顺序和管理信息流向的图. 业务流程图如图3-1所示:图3-1业务流程图4. 游戏的设计与实现4.1 主菜单界面模块设计游戏的界面只有一个主菜单界面和一个游戏界面组成,菜单界面包含了四项功能按钮,在游戏界面中只有一个退回到主菜单界面的按钮. 如下图4-1所示. 图4-1 界面模块图 4.2 游戏界面设计启动游戏后便可直接进入游戏主界面,主界面上玩家可以自由选择对游戏的操作. 该游戏的运行步骤与界面设计如下:启动游戏后游戏主界面,效果如图4-2所示. 图4-2 游戏主界面图点击“开始游戏”,即可进入系统设置的关卡中,默认从第一关开始,在游戏地图下方只有一个退出按钮,玩家可以通过退出按键返回游戏主界面. 玩家现在就可以开始游戏旅途,充分


    注意事项

    本文(基于安卓推箱子游戏的设计与实现.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开