【Android论文栏目提醒】:网学会员Android论文为您提供Android操作系统开发 中国象棋手机游戏 - 开发文档参考,解决您在Android操作系统开发 中国象棋手机游戏 - 开发文档学习中工作中的难题,参考学习。
新疆农业职业技术学院信息技术分院毕业
论文 专业计算机网络技术 班级 09高职网络3班 学号200912544 新疆农业职业技术学院信息技术分院毕业
论文 Android操作系统开发 中国象棋手机游戏 学 院信息技术学院 专 业计算机网络技术 姓 名侯磊 班 级09高职网络3班 指导教师傅峰 二〇一一 年 十二 月 二十 日新疆农业职业技术学院信息技术分院毕业
论文 1 目录 摘 要............................................................................................................................................... 2 ABSTRACT ...................................................................................................................................... 3 第1章 绪论 ................................................................................................................................... 4 1.1问题的提出 ......................................................................................................................... 4 1.2相关研究综述 ..................................................................................................................... 4 1.3研究目标与内容 ................................................................................................................. 5 第2章
Android程序设计相关技术概述........................................................................................ 6 2.1 XUL界面布局 ................................................................................................................... 7 2.2
Android的Activity组件.................................................................................................... 7 2.3 SQLite数据库 .................................................................................................................... 7 2.4 XMPP协议 ......................................................................................................................... 7 2.5
Android 2D图形编程 ......................................................................................................... 7 2.6 MVC模式简介................................................................................................................... 8 第3章 系统的分析与实现 ............................................................................................................. 9 3.1系统分析............................................................................................................................. 9 3.2 系统数据库设计 .............................................................................................................. 11 3.3 面向对象的系统设计 ...................................................................................................... 12 第4章 模块的实现 ....................................................................................................................... 16 4.1 MVC分层结构................................................................................................................. 17 4.2 总体控制模块 .................................................................................................................. 18 4.3 数据存储模块 .................................................................................................................. 19 4.4 数据传输模块 .................................................................................................................. 21 4.5 对局模块.......................................................................................................................... 23 4.6 XML界面布局模块 ......................................................................................................... 23 4.7 系统中关键技术的应用及实现 ...................................................................................... 24 第5章 结束语 ............................................................................................................................... 29 致 谢............................................................................................................................................... 29 新疆农业职业技术学院信息技术分院毕业
论文 2 摘 要 cnChess是运行在
Android平台上的一款支持双人联网对局、即时聊天、对弈记录的休闲棋牌类手机游戏。
系统采用面向对象的编程思想进行构思与分析设计使用UML构建软件模型使用MVC架构模式实现系统的整体架构及各模块之间的接口设计在系统的实践过程中还采用了部分GoF的设计模式进行编码与开发。
本文详细系统地阐述了在
Android平台上应用MVC分层架构模式及面向对象的软件开发思想对cnChess游戏系统的分析、设计及实现过程。
在项目的实践过程中主要用到了以下技术手机布局主要使用了XML设计程序及其子模块的生命周期管理用到了Activity流程控制数据储存方面使用的是轻量级数据库SQLite、网络通讯部分使用的是XMPP即时通讯协议进行数据的传输、对弈的画面更新使用的是手机的2D图形编程。
本
论文的前半部分将简要介绍系统相关的行业信息及基础的技术知识后半部分将对本人在系统各模块中所使用的关键技术的实现进行了全面的介绍。
关键词联网对弈中国象棋手机游戏
Android平台 新疆农业职业技术学院信息技术分院毕业
论文 3 ABSTRACT CnChess is a Chinese Chess game that running on the
Android platform.It support many of the features such as playing games through the network real-time chat and play chess records of casual mobile games. The CnChess game is object-oriented programming design and analysis of the idea of thinking build software models using UML use of MVC architecture patterns to achieve the overall system and the interface between the module designs in practice the system also uses some of the GoFs design patterns to coding and development. This paper systematically expounded in the
Android platform the application of MVC pattern and hierarchical structure of object-oriented software development thoughts cnChess game system analysis design and implementation process. Practice in the course of the project mainly used in the following technologies: cell phones primarily use XML layout design process and life cycle management sub-module uses the Activity process control data storage areas using a lightweight database SQLite netwrok communication Some use the XMPP instant messaging protocol for data transmission public debate of the frame using a mobile phone 2D graphics programming. The first part of this paper will briefly introduce the system based on relevant industry information and technical knowledge the latter part of each module in the system I will be in the key technology used in the realization of a comprehensive introduction. Keywords: Network of games Chinese chess Mobile Games
Android platform 新疆农业职业技术学院信息技术分院毕业
论文 4 第1章 绪论 1.1问题的提出 随着3G移动网络应用的推广手机游戏的规模、复杂程度日益增强其技术手段、设计思想、系统体系结构都发生了深刻的变化。
手机操作系统正朝着高处理能力、多功能、智能化的方向发展。
近年来网络文化市场发展很快随着互联网的迅速普及、宽带的接入社区和家庭我国网络游戏市场发展迅速并进入了一个高速增长期并已经创造了较大的产值带动了相关产业的发展。
如今网络上的提供免费中国象棋游戏大多数是单机版的界面单一功能单一。
本系统将实现在网络上对战的中国象棋功能还对在下棋界面美化以及下棋中可能出现的意外进行了处理。
这样中国象棋休闲游戏将不在是一个功能单一界面枯燥的游戏而是一个较完善的休闲游戏。
在国内外
Android手机应用开发如火如荼、日益盛行的大背景下本人决定开发一款界面友好、操作简单支持双人联网对局、数据记录、智能规则判断的手机休闲游戏。
1.2相关研究综述 近年来国内外的专家学者以及一线的开发人员从理论、方法、技术等不同的角度对
Android手机操作系统进行了一定的研究。
本小节将从
Android手机操作系统的发展历程、研究现状、程序开发设计简介四个方面分析总结国内外的相关研究结果。
1.2.1
Android手机操作系统的发展历程
Android是Google于2007年11月5日宣布的基于Linux平台开源手机操作系统名称该平台由操作系统、中间件、用户界面和应用软件组成号称是首个为移动终端打造的真正开放和完整的移动软件。
表1.1
Android手机操作系统的发展阶段 发展阶段 阶段特征 2007.11.5
Android平台发布 2008.9.22 T-Mobile 2009年1季度 G1销售100万台 2009.3 MWC华为发布
Android手机Moto三星LG计划2009年下半年推出
Android手机 2009 获得OrangeVodafoneO2Telefonica支持 2009 进军上网本 新疆农业职业技术学院信息技术分院毕业
论文 5 1.2.2 国内外关于
Android手机应用程序的研究及开发现状
Android是基于Linux内核的软件平台和操作系统早期由Google开发后由开放手机联盟Open Handset Alliance开发。
它采用了软件堆层software stack又名以软件叠层的架构主要分为三部分。
低层以Linux内核工作为基础只提供基本功能其他的应用软件则由各公司自行开发以Java作为编写程序的一部分。
另外为了推广此技术Google和其它几十个手机公司建立了开放手机联盟。
Android在未公开之前常被传闻为Google电话或GPhone。
大多传闻认为Google开发的是自己的手机电话产品而不是一套软件平台。
2010年1月Google开始发表自家品牌手机电话的Nexus One目前最好的是
Android2.1。
1.3研究目标与内容 1.3.1 研究目标 本项目主要研究的目标分为程序设计思想实践改进目标、
Android平台手机开发技术的研究目标以及对XMPP网络传输协议的使用与研究目标。
运用面向对象的编程思想及RUP统一过程对cnChess中国象棋手机游戏的系统结构、过程、功能等要素进行可视化的描述为
Android程序设计的可视化提供方法、技术上的支持为系统的理论模型和软件建模提供参照。
本系统中使用了多种基于
Android平台的软件开发技术根据要实现的系统功能系统需要使用到的技术及技术研究的目标主要有 手机游戏用户界面的人性化、个性化界面布局给用户以良好的游戏体验 移动设备上的图形编程提供流畅靓丽的游戏过程界面 使用文件、SQLite等数据存储方式提供游戏配置保存游戏过程保存、游戏过程回放、游戏结果记录等功能方便用户查看 使用XMPP即时通讯协议传输数据提供即时聊天的以及在线探测的功能实现游戏的实时性。
1.3.2 研究主要内容 项目研究的内容主要有以下四大块 第一部分是手机游戏的界面设计和背景音效的设计。
和PC上的游戏开发有些许不同手机游戏更加的注重用户体验一个人性化的、时尚靓丽的游戏界面和优美个性化的音效设计是一个成功的手机游戏要达到的基本要求。
第二部分是手机之间的通信模块设计。
3G时代手机通信受流量的限制很大所以必须尽可能的使用简洁的通信协议减少数据的流量减少用户的通讯资费再者双人对局这样的在线游戏必须体现其即时性在一方因为电话打入或其他原因导致游戏挂起或掉线时另一方能及时得知道对方的状态以便做出处理。
另外为了增加游戏的互动性项目提供了即时聊天的功能。
第三部分是对局智能程序的设计。
在没有朋友在线的情况下可以和设计好的AIArtificial Intelligence算法进行游戏。
人工智能程序设计是一项对算法要求很高的程序设新疆农业职业技术学院信息技术分院毕业
论文 6 计特别是在手机这种硬件资源紧缺的环境中更是需要一个高效的算法来提供强大的AI对局支持。
第四部分是逻辑控制模块的设计。
当有紧急事件如电话打入电池没电等发生时需全局模块对当前的游戏状态进行保存或退出等处理并发送相关信息给对局的伙伴用户通过触摸屏进行走棋棋子的走动规则由软件进行智能规则判断对局结束软件将对对局的过程及结果使用与国际接轨的棋谱记录格式PGNFEN进行记录在对局结束后用户可用软件读入PGN格式的对局过程文件进行战局的回放。
软件采用面向对象的编程思想进行构思设计使用UML设计软件的模型采用了部分GoF的设计模式进行编码与开发。
第2章
Android程序设计相关技术概述
Android作为一个移动设备的平台其软件层次结构包括了一个操作系统OS中间件MiddleWare和应用程序Application。
根据
Android的软件框图其软件层次结构自下而上分为以下几个层次 新疆农业职业技术学院信息技术分院毕业
论文 7 2.1 XUL界面布局 XUL 是一种基于 XML 的语言因此需要对 XML特别是 XML 名称空间很熟悉。
XUL是英文“XML User Interface Language”的首字母缩写。
顾名思义它是一种应用XML来描述使用者界面的标示语言。
2.2
Android的Activity组件 Activity一般代表手机屏幕的一屏相当于浏览器的一个页面。
在Activity中添加view实现应用界面和用户交互。
一个应用程序一般由多个Activity构成这些Activity之间可互相跳转可进行页面间的数据传递。
每个Activity都有自己的生命周期。
2.3 SQLite数据库 在
Android平台上集成了一个嵌入式关系型数据库—SQLite。
SQLite是支持结构化查询的轻量级数据库能很好得适应于移动设备的应用。
Android提供了一个名为SQLiteDatabase的类该类封装了一些操作数据库的API使用该类可以完成对数据进行添加Create、查询Retrieve、更新Update和删除Delete操作这些操作简称为CRUD。
2.4 XMPP协议 1. 什么是XMPP XMPP可扩展消息处理现场协议的前身是Jabber一个开源形式组织产生的网络即时通信协议。
具有即时信息传输以及在线现场探测的功能。
2. XMPP的基本网络结构 XMPP中定义了三个角色客户端服务器网关。
通信能够在这三者的任意两个之间双向发生。
服务器同时承担了客户端信息记录连接管理和信息的路由功能。
网关承担着与异构即时通信系统的互联互通异构系统可以包括SMS短信MSNICQ等。
基本的网络形式是单客户端通过TCP/IP连接到单服务器然后在之上传输XML。
3. XMPP通过TCP传输的数据 XMPP传输的即时通讯指令的逻辑与以往相仿只是协议的形式变成了XML格式的纯文本。
XMPP的核心部分就是一个在网络上分片断发送XML的流协议这个流协议是XMPP的即时通讯指令的传递基础。
2.5
Android 2D图形编程 1、Simple Graphics in View就是直接使用
Android已经实现的一些画图操作比如说imagesshapescolorspre-defined animation等等。
这种方式只能画静态或者极为简单的2D图画对于实时性很强的动画高品质的游戏都是没法实现的。
新疆农业职业技术学院信息技术分院毕业
论文 8 2、Canvas首先我们要明白这个Canvas是一个2D的概念是在Skia中定义的。
也就是说在这个方式下还是说的画2D图形。
2.6 MVC模式简介 整个系统采用了MVC模式进行设计。
MVC模式是一种流行的软件设计模式它把系统分为3个模块模型Model、视图View和控制器Controller。
各个模块的功能说明参见表2.1。
表2.1 MVC的三个模块 MVC模块 描述 模型 代表应用程序状态和业务逻辑 视图 提供可交互界面向客户显示模型数据 控制器 响应客户的请求根据客户的请求来操纵模型并把模型的响应结果经由视图展现给客户 各个模块之间的相互作用如图2.2所示。
采用MVC模式有很多好处一是能将显示、逻辑和数据分开某一方面的改变不会影响另一方面其次是可以在不更改视图显示的情况下更改控制器以达到更改视图与用户交互的响应模式的目的。
图2.2 MVC模型图 新疆农业职业技术学院信息技术分院毕业
论文 9 第3章 系统的分析与实现 游戏对用户界面的要求较高需达到人性化美观大方、便于操作个性化游戏界面时尚靓丽、别具一格最好能做到自定义皮肤之类的。
本游戏是使用即时通讯协议进行通信的所以实时的游戏效果、即时聊天以及在线探测是必须做到用户体验良好的。
数据存储方面需存储游戏的配置信息、对局的胜负信息、对局的过程信息。
3.1系统分析 本系统的定位是cnChess中国象棋手机游戏是运行在
Android开源手机操作系统平台上的支持双人联网对战的一款手机游戏。
由于对国际国内3G移动应用的前景看好另外也对游戏开发有很大的兴趣决定开发一款基于
Android手机操作系统的中国象棋手机游戏。
3.1.1 系统功能分析 本系统的基本功能主要有三大块 即时聊天方便玩家的交流学习 象棋对弈游戏的联网互动以及即时性是本程序与一般的象棋游戏的不同 战绩统计用于统计玩家的对弈胜负情况。
详细的系统功能分析图如图3-1所示。
图3-1 cnChess系统功能结构图 本系统的执行流程较简单进入系统后有五个选项联网对局XMPP设置查看胜负情况查看开发者信息及用户帮助信息退出游戏。
在联网对局前XMPP连接设置必须是已经配置好的否则无法连接jabber服务器不能进入对局界面。
新疆农业职业技术学院信息技术分院毕业
论文 10 系统主要的输入输出及模块间的调用情况用IPO图表示如图3-2 图3-2 cnChess IPO图输入—处理—输出图 3.1.2 系统流程分析 系统流程分析是软件工程图表例如流程图、判定表等辅以必要的说明来表示本程序的逻辑流程。
本系统采用XMPP协议进行网络的连接、数据的交换。
站在用户的角度来看用户之间的信息交流是端对端的但是站在程序设计开发者的角度来看数据其实是要经过jabber服务器的。
从设计开发者的角度描述系统的数据交互模式如图3-3。
模型MXMPPClient、Umpire、Manager类视图VDialog、View类控制器CcnChess、startGame类客户根据客户的请求来操纵模型数据查询通知数据变化客户请求控制视图显示客户请求数据请求响应 图3-3 系统交互模式图 3.1.3 系统数据流分析 cnChess手机游戏系统需要储存的主要数据有XMPP网络连接的配置信息以及走棋的胜负信息。
系统的数据流图如图3-4所示。
新疆农业职业技术学院信息技术分院毕业
论文 11 模型MXMPPClient、Umpire、Manager类视图VDialog、View类控制器CcnChess、startGame类客户根据客户的请求来操纵模型数据查询通知数据变化客户请求控制视图显示客户请求数据请求响应 图3-4 系统数据流图 3.2 系统数据库设计 3.2.1 系统E-R图 系统使用SQLite轻量级数据库进行数据的储存和管理。
用户可根据自己的需要进行XMPP网络连接的配置以及胜负情况的查看和清空。
系统的E-R图如图3-5所示。
图3-5 系统E-R图 3.2.2 数据库表设计 本程序采用轻量级数据库SQLite存储管理数据数据库名称为Datas.db 。
Datas.db数据库含有两张表两张表的名称以及字段属性等定义如下scoreTableidwinningfallingpeace对局得分表主要用来储存对局的胜负信息settingsTableidhostportservicepartnereduserIDuserPWD网络连接配置表主要用来储存XMPP网络连接配置。
新疆农业职业技术学院信息技术分院毕业
论文 12 3.3 面向对象的系统设计 本系统使用面向对象的开发思想、UML建模方法、MVC三层架构、GoF的部分设计模式.