android平台的贪吃蛇游戏开发与设计

摘 要随着安卓、IOS、微软等智能手机移动设备的普及,一些经典小游戏也应该满足人们的需求搬到安卓设备上来。现在,开发安卓贪吃蛇势在必得。小巧,时尚,而且多才多艺,现代手机已经成为结合了强大的工具:相机,媒体播放器,GPS系统,和触摸屏。随着技术的演进,移动设备已经变得更多不是简单地拨打电话,但他们的软件和开发平台一直在努力跟上时代的步伐。针对经典游戏设计,本文主要介绍了基于安卓移动平台开发的贪吃蛇游戏系统。该系统设计三大开发难点自定义控件、图形绘制、SQLite数据库。自定义控件:能够自己定义简单的控件,设计控件的方法、监听器;图形绘制:绘制游戏元素,包括:蛇身、蛇头、墙壁、水果。SQLite数据库能够通过SQLite数据库实现数据的本地存储和读取。该系统实现贪吃蛇的定时游动、获取食物、通过按钮控制它游动的方向、以及前十名分数的记录和显示。系统选用自定义控件、图形绘制、SQLite数据库。
目 录
第一章 概述 1
1.1课题背景与意义 1
1.2开发技术的介绍 1
1.2.1 Xml的介绍 1
1.2.2 Canvas的介绍 1
1.2.3 SQLite数据库的介绍 2
1.3开发环境搭建 2
1.3.1下载JDK(Java Development Kit) 2
1.3.2配置变量JAVA_HOME 2
1.3.3 配置变量PATH 3
1.3.4配置变量CLASSPATH 4
1.3.5验证环境 4
第二章 系统分析 5
2.1可行性分析 5
2.2游戏功能 5
2.2.1模块图 5
2.2.2模块流程图 5
2.2.3功能说明 6
2.2.4逻辑说明 6
2.3数据库 6
第三章 系统实现 7
3.1主要界面模块 7
3.1.1 游戏的绘制 7
3.2控制模块 9
3.2.1方向、状态控制 9
3.2.2死亡控制 12
3.2.3游戏难度选择 14
3.3
 *好棒文|www.hbsrm.com +Q: ^351916072^ 
菜单模块 15
第四章 系统测试 18
4.1测试方法 18
4.1.1黑盒测试 18
4.1.2白盒测试 18
4.2测试用例 18
结束语 21
致 谢 22
参考文献 23
第一章 概述
1.1课题背景与意义
关于安卓平台的游戏动画,它是基于Andriod平台实现的一个高效并且简易的游戏引擎,或者把其他手机平台相对较为成熟稳定的游戏动画引擎移植过来。解决这些问题可以为安卓贪吃蛇游戏以及其他相对类似的游戏移植提供流畅稳定的动画效果,实现游戏引擎的移植同时也可以复用试用游戏动画的代码,提高编程的效率。
在解决游戏动画效果的同时,安卓贪吃蛇游戏中,必须考虑到地图寻路问题并,因此要考虑多方面的因素。
贪吃蛇游戏是一款极具经典和趣味的手机移动端游戏,设计比较复杂,算法很重要。它涉及面广、牵涉方面多,如果考虑不周和设计不谨慎,将无法成功开发出这个游戏系统。在安卓贪吃蛇游戏的设计中,涉及到显示与更新图形画面、收集与更新数据。并且开发中,还要注意到应用类的继承机制相应设计模式。所以,在开发设计过程中,必须处理好各个类之间间的数据通信关系和逻辑依赖关系。
1.2开发技术的介绍
在本系统应用了XML、SQLite、Canvas技术,使用的后台数据库为SQLite,用 Eclipse进行编码。
1.2.1 XML的介绍
目前,XML在很多开发编程中都广泛运用,安卓也不例外。它是一个承载数据的一个重要功能。Android 平台是一个开源移动开发平台。它允许您访问各种移动设备的所有方面,这些移动设备从低级图形设备到手机摄像头上的硬件不一而足。由于 Android 可以实现这么丰富的功能,因此您可能想知道为何还要为 XML 伤脑筋呢。并不是因为使用 XML 是多么地有趣;而是因为它能提供一些特殊的支持。XML 经常用作 Internet 上的一种数据格式。如果您希望通过 Internet 访问数据,则数据很有可能是 XML 格式。如果您希望发送数据给 Web 服务,那么您可能也需要发送 XML。简而言之,如果您的 Android 应用程序将利用 Internet,那么您可能需要使用 XML。幸运的是,您可以采用多种方法在 Android 上使用 XML。
1.2.2 Canvas的介绍
Canvas,英文的意思是帆布。在安卓中,把Canvas比做画图的画布,我们要运用设置好Paint类作为画笔,在画布上画出自己想要的图形;此外,Canvas也是显示位图(Bitmap类)的核心类。根据各个用户自己的的喜好,Canvas还可设置一些画布的属性,例如:画布的类型、尺寸、颜色等。
一个完整的画图需要四个基本的要素:
1、Bitmap类:用来保存像素。
2、Canvas类:用来操作绘制Bitmap;
3、实现决定要绘制的东西。
4、Paint类:绘制的画笔(颜色和样式)
三种Canvas对象获取方式:
1、通过重写onDraw方法,在View中,会把Canvas对象当做参数传递过来,我们操作这个Canvas,效果会直接反应在View中。
2、创建Canvas对象。一个Canvas对象一定是对应一个Bitmap对象的。因此必须要为一个Canvas对象设置一个对应的Bitmap对象。
3、调用SurfaceHolder.lockCanvas()函数,最后会返回Canvas对象
1.2.3 SQLite数据库的介绍
SQLite是一个开源的轻便型的嵌入到安卓系统本地的关系数据库,SQLite的第一个版本(Alpha)诞生于2000年5月,它是一款轻量级的简易数据库,SQLite占用系统资源十分低,只需要几百K的内存空间就足够运转了。SQLite已经被多种软件和产品使用,包括:Mozilla、 FireFox、安卓和苹果系统。它包含自包容、没有配置、可以提供事务的SQL关系数据库的搜索引擎。其有便携高效率、方便试用、结构严谨、高效、可依赖等特点。SQLite和其他数据库不同的是:安装步骤和运行过程都十分简单,通常情况下只要确保SQLite的相关二进制文件存在就可以被创建、然后连接和最后可以使用数据库。在个人使用安卓本地数据库的体验中,SQLite最大最重要的优点就是十分小巧简单,方便系统携带。因此在一些小型简易的单机应用或者游戏系统做本地数据存储时表现出色。
1.3开发环境搭建
1.3.1下载JDK
JDK(Java Development Kit)下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
JDK是Java Development Kit的简称,JDK是语言Java的核心部分,包括各种Java开发的模块,Java安装完毕必须配置环境变量。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/1340.html

好棒文