Android平台的数独游戏设计毕业论文
2021-04-21 00:51:59
摘 要
在手机行业蓬勃发展的前提下,手机选择Android系统的越来越多。该系统是基于Linux的开放、自由的操作系统。
随着手机行业发展蓬勃迅速,尤其是以Android系统为例,越来越多的手机搭载了Android智能系统,该系统是以Linux为基础的具有开放性、丰富的硬件支持、不受运营商限制、良好扩展性的源代码操作系统,受到了外界良好评价与使用支持。
Android的系统架构为四层架构:系统运行库层,Linux内核层,应用层,应用框架层。除了上述划分方式以外,从系统实际的架构模型来看,Android则可以分成以下几个层次:1、框架层2、应用层3、运行时4、硬件抽象层5、核心类库6、Linux内核。
本文主要介绍了如何用Java语言开发程序,用Androids tudio去开发一款Android平台上的数独游戏app。数独是一种逻辑游戏,需要利用八十一个格子内的已知数字来推理剩余空格中的数字,且满足行、列、3×3小九宫格内都是不重复的1-9间的数字。任何一个数独游戏如果是无解或多解,都是不合格的,一个合格数独游戏最基本的条件就是有且仅有一个解。本游戏的程序中设计有计时、成绩保存、难度选择、重来等功能。
关键词:Android;手机游戏;数独
ABSTRACT
With the quick development of the mobile phone industry, as example, more and more mobile phones are equipped with Android's intelligent system. This system is an open source operating system based on Linux. Its openness is not affected by the carrier restrictions, extensive hardware support, good scalability, the outside world has been evaluated with the use of good support.
Android's system architecture has a four-tier architecture model: Linux kernel layer, system runtime layer, application framework layer, and application layer.In addition,from the actual architecture model of the system, Android can be divided into the following levels: application layer, framework layer, runtime, core library, hardware abstraction layer, Linux kernel.This article mainly expatiates on the object-oriented program development language Java, using Android studio as a development tool, and developing a Sudoku game based on the Android system. Sudoku is a logic game that uses paper and pens to perform calculations.The player needs to infer all the remaining spaces based on the known numbers on the 9×9 disk, and to satisfy each row, each column, and every bold line in the house, the numbers are 1-9 and they are not repeated. Each qualified Sudoku puzzle has one and only one answer. The reasoning method is also based on this. Any question that has no solution or multiple solutions is unqualified. This program implements the difficulty selection function, the timekeeping function, the saving of results, and the re-entry function.
Keywords: Android; mobile games; Sudoku
目 录
第一章 绪论 1
1.1游戏背景 1
1.2游戏简介 1
1.2.1数独题目的数量 1
1.2.2数独题目的最少组成 1
1.3手机游戏特征 1
1.4国内外研究现状 2
1.5本章小结 3
第二章 Android技术介绍 4
2.1 Android简介 4
2.2 Android平台架构及特征 4
2.2.1 Android平台特征 4
2.2.2 Android平台架构介绍 5
2.3 Android应用程序组件 6
2.4 XML文件解析技术 8
2.5 SharedPreferences 8
2.6本章小结 8
第三章 系统分析与设计 9
3.1系统需求分析 9
3.1.1功能性需求分析 9
3.1.2安全性需求分析 9
3.2系统结构设计 9
3.3本章小结 10
第四章 基于Android平台数独游戏的实现 11
4.1 Android开发环境介绍 11
4.2 Android开发平台搭建步骤 11
4.3系统主要功能 11
4.4游戏中主要类的简要介绍 12
4.4.1难易度选择界面相关类 12
4.4.2数独列表界面相关类 12
4.4.3游戏界面相关类 13
4.5游戏中主要功能详解 13
4.5.1选择难易度界面 13
4.5.2关卡选择界面 13
4.5.3正式游戏界面 14
4.6数独数据库存储 14
4.6.1数据库代码 14
4.6.2数据库关系E-R图 14
4.6.3游戏的数据检测 15
4.7本章小结 16
第五章 游戏的测试和运行 17
5.1游戏测试概述 17
5.2测试环境 18
5.3游戏运行结果 18
5.4本章小结 18
第六章 总结 19
参考文献 20
致 谢 21
第一章 绪论
1.1 游戏背景
“九宫格”相信大家都不陌生,起源自中国,数独就是由它演变而来。但九宫格需要斜向、纵向、横向三个方向的数字之和都等于15,相对来说更复杂,现代快节奏的生活显然与之格格不入,因此,数独游戏经由它改良后应运而生。我国目前发现最早的九宫格游戏记载于洛书河图中,18世纪末,一种叫“拉丁方块”的游戏被瑞士数学家莱昂哈德•欧文发明,不久后,类似的游戏在美国杂志上开始出现。从此,这个游戏受到很多人关注,之后这个游戏又传入日本,很快传播广泛。自2004年首个“数独”游戏在《泰晤士报》上刊登起,数独游戏就开始在世界范围内闻名。不需要复杂数字运算,操作简单,开发大脑,锻炼思维,可玩性高,无需特定语言基础是其流行开来的重要原因。
1.2游戏简介
1.2.1数独题目的数量
9×9的拉丁方阵一共有多少个呢? 5524751496156892842531225600个。但是,与拉丁方阵不同的是,数独规则的每列,每行,每个九宫格都是用1到9之间的不同数字,因此数独谜题要少很多。2005年底,由数学家贝米尔和罗斯坦算出,数独谜题一共有6670903752021072936960种可能存在。但由于在同一个数独中存在像代码交换,行交换,列交换等变换,很难分清是否来自同一个数独。因此,一种辨别数独变换的方法被提了出来。西澳大利亚教授,Gordon Royle博士,成功解决了这一难题。利用Nauty程序图形的转换来做对比,将九宫格里的代码交换,行交换,列交换等,最后算出在本质上,共有5472730538个不同的数独谜题。
1.2.2数独题目的最少组成
已知数字点对称是一个好的数独谜题的基本要求,数字越少越好,而且只能有唯一解。
能达到以上要求的数独谜题中,目前最好的记录是给出18个数字,若将条件放宽,不需要点对称,最少给出17个数字能有唯一解。