基于安卓Android的数独游戏APP的设计(任务书,开题报告,论文13400字,程序代码)
摘 要
近几年,移动互联网和手机应用市场日新月异,基于Linux内核的Android系统在此形势下应运而生,并越来越得到手机用户的青睐。相比以往,人们花费更多的时间在手机上,因此,忽略时间、地点的手机小游戏成为一种新的需求。
本课题主要是实现一款运行于Android平台的Sudoku游戏系统。数独是一款古老的游戏,发展到现在有了一定变化,玩家需要在盘面上81个小格子中根据已知数据推理出空格子里的数据,并要求每个3×3的小宫格,行和列都要包括1~9,且不重复。
本文以系统的需求分析为基础,介绍了数独算法的实现,即采用“挖洞”算法生成数独初盘并使用加权规范函数WNF(P)实现数独游戏难度等级的判断。之后采用候选数搜索算法求解数独,其相关算法都采用Java语言编写。另外,本系统采用XML语言实现相关界面的绘制,并使用Shared Preferences对游戏中的数据进行存储。
系统界面运用了极简主义的风格,平面感突出,界面简洁,与用户沟通良好,方便使用。本文的工作对同类Android游戏的开发具有一定的借鉴意义。
关键字:Android ;Java;数独;手机游戏
Abstract
In recent years, mobile Internet and mobile application market have developed fast. In this situation, the Android system based on Linux kernel arises at the historic moment, and earns the favor of cell phone users.Compared with the past, people spend more time on the phone.Therefore, mobile phone games that can be played ignoring time and place become a new kind of demands.
This thesis mainly talks about a system of Sudoku game based on the Android platform.Sudoku is a old game,who’s rule changes when time goes by. Players need to reason about the number in all vacant grids according to the known data on the disk of 81 small grids, and meet each of the 3 x 3 grids, row and column contains the Numbers 1 to 9, and do not repeat.
In this thesis, we describe the implementation algorithm of the game that we adopt the idea of digging holes to create an original layout which was divided into different difficulty ranks by using function WNF. Then, the optimized candidate searching algorithm is used to solve the Sudoku puzzles, its relevant algorithm are all written in Java language. In addition, this system adopts the XML language to realize the drawing of the related interfaces, and uses Shared Preferences to store data in the game.
The system interface is designed in a simple fashion with a minimalist style. And it maintains clear communication with user so that it is easy to operate. This thesis can be used for reference by those who develop the same kind of Android games.
Key Words:Android;Java;Sudoku;mobile phone games
游戏主窗体模块
此部分是整个系统的核心,主要功能是实现Sudoku游戏的整个流程,主要包括四个部分:
1.继续,它实现了保存玩家上一次中途退出游戏时的相关信息,保证玩家可以下次继续未完成的上一局。
2.开始游戏,这一部分功能是开启新的游戏,它提供了3种不同难易程度的关卡供玩家选择,每一种难度的数独题是根据数独生成算法和难度级别判断算法生成的,当玩家选择了难度级别后,将会出现对应该难度级别的Sudoku初盘界面。
3.关于,这部分主要对数独的游戏规则进行了介绍。
4.退出,这部分提供退出游戏的功能。
主要内容
本课题的主要内容是如何通过Android游戏开发相关技术开发一款数独游戏,实现选择不同难度等级的新游戏,继续之前的游戏和玩法控制等功能。
论文主要内容安排如下:
第1章 绪论。主要介绍课题的研究背景,并通过介绍Android应用市场的发展及前景来阐述课题的意义,明确了课题的价值。同时也对Sudoku游戏的发展及其国内外研究现状也进行了相关说明。
第2章 相关开发技术及平台的介绍。这章主要对系统中用到的平台和相关技术进行了介绍。
第3章 数独游戏系统的整体设计。这部分从宏观的角度对整体设计进行了需求分析,并确定了系统的各子模块的相关功能。
第4章 数独游戏系统的详细分析与设计。这一章是整篇论文的核心,主要详细介绍了游戏系统各个功能模块的具体实现,并对各部分最终的运行效果进行了展示。
第5章 总结。对课题的研究成果进行总结。
系统开发及运行环境
开发工具:Eclipse4.2,Android4.2.2
JDK环境:JDK version7
开发语言:java,XML
目 录
第1章 绪论 1
1.1 研究背景和意义 1
1.2国内外研究现状 1
1.3主要内容 2
第2章 游戏开发平台及相关技术 3
2.1 Android系统简介 3
2.2 Android应用程序组件 4
2.2.1 Activity 4
2.2.2 Intent 4
2.3 SharedPreferences 4
2.4 Activity的生命周期状态 5
2.5 Activity跳转时的状态变化 6
第3章数独游戏系统的总体设计 8
3.1系统需求分析 8
3.1.1公共资源文件设置模块 8
3.1.2游戏主窗体模块 8
3.1.3虚拟键盘模块 8
3.1.4游戏设置模块 9
3.2游戏整体架构 9
3.3游戏整体运行流程 9
3.4游戏主体的运行流程 10
第4章 数独游戏系统的详细分析与设计 11
4.1 系统开发及运行环境 11
4.2公共资源文件的配置 11
4.3游戏主窗体模块 11
4.3.1设计主窗体布局文件 11
4.3.2启动界面主体类的实现 12
4.4游戏难度级别选择模块 12
4.5数独游戏界面的绘制 13
4.5.1初始游戏界面的绘制 14
4.5.2处理用户操作事件 15
4.5.3 PuzzleView视图状态保存 15
4.6虚拟键盘模块 15
4.6.1设计虚拟键盘布局文件 16
4.6.2键盘中可选数字的生成 16
4.6.3处理键盘输入 16
4.7实现游戏逻辑 17
4.8继续游戏模块的实现 18
4.8.1游戏暂停 18
4.8.2游戏恢复 18
4.8.3继续按钮的实现 18
4.9数独算法类的实现 19
4.9.1数独难度级别判断算法的实现 19
4.9.2数独生成算法的实现 20
4.10游戏完成模块 20
4.11设置模块 21
4.11.1添加主菜单 21
4.11.2创建菜单 21
4.11.3添加设置选项 21
4.11.4设置选项的保存 22
4.12关于模块 22
第5章 总结 24
参考文献 25
致 谢 26
|