ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:685.59KB ,
资源ID:10185195      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10185195.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Android的益智游戏的设计与实现本科生毕业设计 精品.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于Android的益智游戏的设计与实现本科生毕业设计 精品.docx

1、基于Android的益智游戏的设计与实现本科生毕业设计 精品南阳理工学院本科生毕业设计(论文)基于Android的益智游戏的设计与实现Design and Research of Developmental game Based on Android总 计:毕业设计(论文) 31页表 格: 5个图 片: 14个南 阳 理 工 学 院 本 科 毕 业 设 计(论文)基于Android的益智游戏的设计与实现Design and Research of Developmental game Based on Android南阳理工学院Nanyang Institute of Technology毕业

2、设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解XX大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版

3、,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 基于Android的益智游戏的设计与实现软件工程 陈兵1摘 要 在国内外,android的前景十分广阔,尤其是这个平台的游戏开发更是前途不可限量。1976年Gremlin平台推出了一款经典街机游戏Blockade, 21年后诺基亚基于这个创意推出了世界上第一款最受欢迎的手机游戏贪吃蛇从而开启了手机游戏发展之先河。发展到现在,3G手机游戏已经成为当今移动游戏领域的主流,Android作为这个时代的弄潮儿正以燎原之势蔓延开来。以仙剑为代表

4、的手机RPG游戏已渐渐退出舞台,现在老少皆宜的益智类游戏慢慢占据着主流,本论文研究的游戏正是这样一款游戏,Q版的游戏画面风格和简单易懂的操作适合于任何年龄段的玩家。航空帝国除采用Android平台的四大组件,涉及到自定义View中画图的一些方法和技巧是本游戏的重点,调用Android系统画图的API及自己实现的相应算法,再加上漂亮的图片足以实现几乎任何炫酷的效果。有人说任何一个智能手机用户都是一个潜在的游戏玩家,我想搭乘Android的顺风车,手机游戏开发必将大有作为。关键词 Android;手机游戏;3G;益智类游戏;老少皆宜;Design and Research of Developme

5、ntal game Based on AndroidSoftware Engineering Major Chen Bing1Abstract: At home and abroad,the Android has broad prospects,especially in the platform game developers is limitless.In 1976 the Gremlin platform launched a classic arcade game based on the Nokia Blockade,21 creative has launched the wor

6、lds first and most popular mobile phone game Snake,thereby opening the mobile phone game development of precedent.Until now,3G mobile phone games have become todays mobile phone game of the mainstream,Android as the era of beach-goers must borrow wind smooth bright.In “the immortal sword” as the rep

7、resentative of the mobile phone RPG game has gradually quit the stage,now occupying the main puzzle game slowly,this paper studies the game is just a game,Q version of the game screen style and simple and easy operation is stuitable for any age game player. Empire in addition to the Android platform

8、 air four components, involve custom View drawing some methods and techniques is the focus of the game, called Android system drawing of the API and realize the algorithm, combined with beautiful pictures to achieve virtually any cool effect. People say that any one of the intelligent mobile phone u

9、ser is a potential game player, I want to take the Android ride, mobile phone game development will accomplish much.1Key words: Mobile Phone Game;3G; Developmental game; yang and old;1 绪论1.1 背景3G(第三代数字通讯技术)正离我们的生活越来越近,它的到来必将掀起一阵无线通讯的新浪潮,3G是向未来个人通信演进的一个重要发展阶段,具有里程碑和划时代的意义。说到3G不能不谈到Android,1Android是Go

10、ogle于2007年11月5日宣布的基于Linux平台的开源手机操作系统。它包括一个操作系统,中间件和一些重要的应用程序。它采用软件堆层(Software Stack,又名软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和Dalvik虚拟机,由C+开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件。这里,可以把android看作是一个类似于windows的操作系

11、统。学习android平台下的软件开发正如以前学习windows平台下的软件开发一样。1在国内,android的前景十分广阔,国内很多的厂商和运营商也纷纷加入了android阵营,包括中国移动,中国联通,华为通讯,联想等大企业。同时android应用的范围不仅仅在手机,国内一些厂家也陆续推出了采用android系统的MID产品,比较著名的包括由Rockchip和蓝魔推出的同时具备高清播放和智能系统的音悦汇W7,我们可以预见android也将会被广泛应用在国产智能上网设备上,将进一步扩大Andorid系统的应用范围。1.2 Android的崛起【2】Android操作系统是Google最具杀伤力

12、的武器之一。苹果以其天才的创新,使得iphone在全球迅速拥有了数百万忠实粉丝,而Android作为第一个完整的,开放,免费的手机平台,使开发者在为其开发程序时拥有更大的自由。与Windows,Symbian等厂商不同的是,Android操作系统免费向开发人员提供,这样可节省近三成的成本,得到了众多厂商和开发者的拥护。【2】最早进入Android市场的宏达已经陆续在一年内推出了G1,Magic,Hero,Tatto等4款手机,三星也在2010年推出了Galaxyi7500,连摩托罗拉也推出了新款Android手机Cliq,中国移动也以Android为基础开发了Ophone平台。这些发展证明An

13、droid已成为只能手机市场的重要发展趋势。32010年是android平台飞速发展的一年。据报道显示,2011年8月Android已占据了全球智能手机市场的半壁江山;而作为世界上零售领域最庞大的智能手机卖家苹果公司,也以其iOS操作系统控制了五分之一的市场。换言之,Android和iOS加起来在全球智能手机市场上占据了三分之二的绝大多数市场份额。Android已经在智能手机操作系统上占据着主导地位。这不难解释,毕竟这样一个完全免费并开放源代码的平台对于许多制造商来说都极具吸引力。包括HTC、Samsung、Acer、Sony Ericsson、LG、Motorola等等一系列厂商都对其投入了

14、极大地关注和合作。3因此,2011年6月Google宣称其每天激活50万Android设备,我们对这一消息并不会感到十分吃惊。这一数据虽然也包括平板电脑在内,但即便是这样,它也仍然非常可观。它不仅仅显示了Android在制造商和消费者间的普及度,同时还标志着智能手机正在成为如今社会不可缺少的一部分。Andy是一个有远见的人,早在2003年他就看到了Android2005年的起步和被Google的收购,也看到了系统的进步和新的机型的快速的发布。所有的这一切都让我们相信,Android走向世界第一移动操作系统的宝座的步伐是势不可挡的,Android可能真的会继续带着我们走向移动设备梦想的彼岸。1.

15、3 国内外研究现状Android 包括操作系统、用户界面和应用程序 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。Google与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达电和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。【4】Android 作为谷歌企业战略的重要组成部分,将进一步推进随时随地为每个人提供信息这一企业目标的实现。我们发现

16、,全球为数众多的移动电话用户从未使用过任何基于 Android 的电话。谷歌的目标是让(移动通讯)不依赖于设备甚至平台。出于这个目的,Android 将补充,而不会替代谷歌长期以来奉行的移动发展战略:通过与全球各地的手机制造商和移动运营商结成合作伙伴,开发既有用又有吸引力的移动服务,并推广这些产品。【4】开放手机联盟的成立和 Android 的推出是对现状的重大改变,在带来初步效益之前,还需要不小的耐心和高昂的投入。但是,谷歌也在不断努力,让这些服务变得更好,同时也将添加更有吸引力的特性、应用和服务。1.4 项目研究的主要内容此游戏主要用到了Android用来画图的API,主类继承view类,

17、重写其onDraw()方法并另起一个线程对主UI线程更新,实现整个游戏的动态效果。其中自己写了很多算法来实现一些炫酷的效果。游戏主体框架的构思,分为8大部分: com.hkdg.animation用来存放游戏中所用到的对ani动画的初始化及播放的类。 com.hkdg.game主要用来存放从服务器解析过来的数据,也包括读取的本地数据。 com.hkdg.game.Music用来存放游戏中音乐,音效的初始化及播放的类。 com.hkdg.game.Object游戏中所用到的所有实体类存放在此。 com.hkdg.game.View游戏UI由若干自定义View组成,所有的View类存放于此。 co

18、m.hkdg.GameEngine此包中主要存放的是一个继承了View的类,它另起了一个线程用来绘制界面,并同时更新主UI线程。 com.hkdg.Main这是一个存放着几个Activity的包,游戏中为数不多的几个activity都存放于此。 com.hkdg.tools这是一个存放着工具类的工具包。1.5 本章小结本章主要对Android的发展历程以及对本游戏内容进行了简单的阐述,为Android开发者提供一个参考。2 Android的开发环境2.1 Android操作系统目前只支持XP(32-bit)、Vista(32/64-bit)、Mac OS X 10.4.8或更新版本(x86),

19、Linux(只在Linux Ubuntu Dapper Drake上面做过测试)。 系统XP sp2/sp3 32bit 来做讲解,其他系统的可以google一下差异,反正都大同小异的。2.2 Android开发环境建议使用eclipse进行开发,当然,eclipse版本要在3.3以上,这是官方说法,3.3以下我也没测过,3.3 (Europa)、3.4 (Ganymede) 都可以java版本或者EE版本也都没问题的,可以到eclipse官方下载最新版本。因为开发是基于java的,所以jdk是少不了的,jdk要求是5.0或者6.0,我还是用5.0比较多,可以到sun官方下载。2.3 Andr

20、oid开发环境变量的配置2.3.1 JDK的配置首先要到sun官方下载jdk,注意的是下载jdk而不是下载jre,因为jre是提供java的运行环境而不是开发环境。sun官方网站是: 下载后安装是下的解压包那就解压到某目录,例如解压到是C:Program FilesJavajdk1.5.0_14 右键点击我的电脑 - 属性 - 高级,点击下面的环境变量,在下面的“系统变量”处选择新建在变量名处输入 JAVA_HOME变量值中输入刚才的目录,比如C:Program FilesJavajdk1.5.0_14 。效果如图2-1所示:图2-3-1-1 进入环境变量确定后再新建一个变量名为classpa

21、th,变量值为 %JAVA_HOME%/lib/rt.jar;%JAVA_HOME%/lib/tools.jar , 确定后找到PATH的变量,双击或点击编辑,在变量值最前面加上%JAVA_HOME%/bin; 注意里面的是,确定、确定、确定后即可。具体如下图2-2所示图2-3-1-2 环境变量的配置然后开始 - 运行 cmd,输入java或者javac看看有没有效果,如果出来一大堆其它的东西,那就好了,如果出现类似xxx不是内部或者是外部命令之类的,那就说明你的设置有问题,看看那里出问题然后加以改正。2.3.2 SDK的配置因为我们要开发的android应用程序,所以下的sdk是Google

22、那里下载,地址在 以后更新后估计地址会变,所以大家可以从 然后同样要设置环境变量,同jdk设置,新建一个SDK_HOME,值为D:SDKandroid-sdk-windows-1.5_r3android-sdk-windows-1.5_r3 ,然后找到path,在前面加上%SDK_HOME%tools; 就OK了。和jdk一样,我们也可以测试一下环境变量是否设置成功,cmd窗口中输入android,出现一堆东西,就完成了。2.4 Eclipse的配置当然,以上都搞定后,还不能马上用eclipse开发android应用程序,还必须添加eclipse插件才行,幸好这步骤非常轻松,打开eclipse

23、后,点击菜单栏的help - install new software. 然后点击Add会出来一个Add Site的窗口,这里Name输入android(自己取个就是了),location中输入插件的网络地址: https:/dl- DDMS 和 Android Development Tools都选中,finish就可以了,可能有段时间会去计算插件占用资源情况,慢慢等会。完成后会提示重启eclipse来加载插件,ok重启,就可以用了。2.5 本章小结本章将主要介绍如何构建Android开发环境,包括获取Android SDK、Eclipse以及进行Android Eclipse插件设置等。3

24、 Android应用程序核心3.1 应用程序基础 Android的应用程序全部都是用Java编程语言所写的。编译后的Java代码包括应用程序要求的任何数据和资源文件,是通过aapt工具捆绑成一个Android包,归档文件是以.apk为后缀。这个文件是分发应用程序和安装到移动设备的中介或者是工具,用户下载这个文件到他们自己的设备上。一个.apk文件中的所有代码就会被认为是一个应用程序。 aapt是Android Asset Packaging Tool的首写字母的缩写,这个工具包是含在SDK的tools/目录下的。查看、创建、更新与zip兼容的归档文件(zip、jar、apk)。它也能将资源文件

25、编译成二进制包。 虽然你可能不会经常直接使用appt,但构建脚本(build scripts)和IDE插件会使用这个工具打包成apk文件,构成一个Android的应用程序。 下面是更详细的使用细节,5首先打开一个终端,进入tools/目录下,运行命令: Linux或Mac操作系统:./aapt ,如果是Windows:aapt.exe 。在这里注意的是:tools/目录指的是android SDK目录下的/platforms/android-X/tools/。在很多的方面,每个Android的应用程序是生活在它自己的世界。默认的情况下,任何一个应用程序是运行在它自己的Linux进程中。而当应用

26、程序中的任何代码需要被执行时候,Android将启动进程;当它不再需要和系统资源不会被其他应用程序所请求时,Android就会关闭这个进程。每一个应用程序都有自己的Java虚拟机(VM),所以应用程序的代码是独立于其他所有的应用程序代码的运行。在默认情况下,每一个应用程序分配一个唯一的Linux用户ID。权限被设置为每一个应用程序的文件仅对用户和应用程序自己本身可见。虽然有一些方法也可以暴露他们给其他应用程序。也有可能的是设置两个应用程序共享一个用户ID,这种情况下,他们能够看到对方的文件。为了节省系统资源的占用,具有相同ID的应用程序最好可以安排在同一个Linux进程中,共享同一个VM。53

27、.2 应用程序组件3.2.1 AcitivityActivity是Android组件中最基本也是最为常见的组件,在一个Android应用中,一个Activity通常就是一个单独的屏幕。当Activity从一种状态转变到另一种状态时,会调用以下保护方法来通知这种变化:void onCreate(Bundle savedInstanceState)void onStart()void onRestart()void onResume()void onPause()void onStop()void onDestroy()【6】下图为Activity的生命周期图示:图3-2-1 Activity的生

28、命周期图示6在实现 Activity 类的时候,通过覆盖( override )这些方法即可在你需要处理的时候来调用。onCreate :当活动第一次启动的时候,触发该方法,可以在此时完成活动的初始化工作。onCreate 方法有一个参数,该参数可以为空( null ),也可以是之前调用onSaveInstanceState ()方法保存的状态信息。onStart :该方法的触发表示所属活动将被展现给用户。onResume :当一个活动和用户发生交互的时候,触发该方法。onPause :当一个正在前台运行的活动因为其他的活动需要前台运行而转入后台运行的时候,触发该方法。这时候需要将活动的状态持

29、久化,比如正在编辑的数据库记录等。onStop :当一个活动不再需要展示给用户的时候,触发该方法。如果内存紧张,系统会直接结束这个活动,而不会触发 onStop 方法。 所以保存状态信息是应该在onPause时做,而不是onStop时做。活动如果没有在前台运行,都将被停止或者Linux管理进程为了给新的活动预留足够的存储空间而随时结束这些活动。因此对于开发者来说,在设计应用程序的时候,必须时刻牢记这一原则。在一些情况下,onPause方法或许是活动触发的最后的方法,因此开发者需要在这个时候保存需要保存的信息。onRestart :当处于停止状态的活动需要再次展现给用户的时候,触发该方法。onD

30、estroy :当活动销毁的时候,触发该方法。和onStop 方法一样,如果内存紧张,系统会直接结束这个活动而不会触发该方法。onSaveInstanceState :系统调用该方法,允许活动保存之前的状态,比如说在一串字符串中的光标所处的位置等。通常情况下,开发者不需要重写覆盖该方法,在默认的实现中,已经提供了自动保存活动所涉及到的用户界面组件的所有状态信息。3.2.2 ServiceService是一种长生命周期,没有用户界面的程序。Service是android 系统中的一种组件,它跟Activity的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Servic

31、e的启动有两种方式:context.startService()和context.bindService()。【7】使用context.startService() 启动Service是会经历:context.startService() -onCreate()- onStart()-Service running context.stopService() | -onDestroy() -Service stop如果Service还没有运行,则android先调用onCreate()然后调用onStart();如果Service已经运行,则只调用onStart(),所以一个Service的onStart方法可能会重复调用多次。stopService的时候直接onDestroy,如果是调用者自己直接退出而没有调用stopService的话,Servi

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1