基于Android系统的连连看详细设计说明书

基于Android系统的连连看详细设计说明书1、引言1.1、编写目的本文档用于说明本游戏开发的详细过程,使委托方了解软件的内部结构,从而对连连看有更深入的了解,便于后期的维护和修改工作。

1.2、背景说明:a.待开发软件系统的名称:基于Android系统的连连看游戏设计b.本项目的任务提出者:学校开发者:游戏开发小组用户:喜欢玩游戏的人项目开发环境:eclipse、Android系统平台1.3、定义Android 连连看详细设计1.4、参考资料《Android开发指南》2、程序系统的结构连连看游戏结构如下:主要有四个大类:class GameView //游戏视类,处理游戏中的情况,包括界面生成,算法,一部分消息响应。

class GameActivity //用于处理游戏中的消息提示class StartActivity //用于菜单的设计Class SetActivity //用于菜单中游戏难度的设定3、菜单设计说明3.1、程序描述主要功能:用于为玩家提供操作提示,便于玩家了解游戏的规则。

可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

3.2、功能主要有开始游戏、游戏设置、游戏规则、退出游戏等几个选项游戏设置的菜单3.3、性能当用户选择菜单时能够快速反应,以满足用户的要求。

3.4、输人项用户点击按钮3.5、输出项五个菜单选项3.6、算法//定义菜单类,接口为OnClickListener,用于接收用户的单击消息。

public class StartActivity extends Activity implements View.OnClickListener //设计5个按钮用于接收按钮消息:private Button btnStart;private Button btnSet;private Button btnRole;private Button btnAbout;private Button btnExit;//在OnCreate函数中将它们初始化://获取按钮btnStart = (Button)findViewById(R.id.btnStart);btnSet = (Button)findViewById(R.id.btnSet);btnRole = (Button)findViewById(R.id.btnRole);btnAbout = (Button)findViewById(R.id.btnAbout);btnExit = (Button)findViewById(R.id.btnExit);//注册点击事件btnStart.setOnClickListener(this);btnSet.setOnClickListener(this);btnRole.setOnClickListener(this);btnAbout.setOnClickListener(this);btnExit.setOnClickListener(this);在OnClick函数中对响应进行处理:setContentView(new GameView(this)); //进入游戏,游戏在GameView类中进行了封装//说明游戏规则new AlertDialog.Builder(this).setMessage("1. 将相同的两张图片用三根以内的直线连在一起就可以消除\n" +"2. 每消除一次图片,都会使可用时间增加\n" + "3. 每隔一段时间,当前的界面中的图片会进行重排列\n" +"4. 在规定的时间里,当所有的图片都消除时,即为胜利\n" + "5. 规定的时间内有图片未消去,即为失败\n").setPositiveButton("确定", null).show();//结束游戏this.finish();//进行游戏设置,设置游戏的难度,调用了SetActivity类intent.setClass(this, SetActivity.class);3.7、接口API函数3.8、限制条件无明显限制条件4、界面设计说明4.1、程序描述主要功能:用于为玩家提供可视化的游戏界面,增加了游戏的可玩性。

可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

4.2、功能生成游戏界面,生成进度条。

如下图:4.3、性能能够快速的随机生成符合用户需要的界面4.4、输人项无输入4.5、输出项游戏界面4.6、算法//定义游戏视图类public class GameView extends View//存储素材图片public int[] imageType//保存所有小格子中的图片public int[][] grid = new int[row][col];//初始化加载图片的类型public void initType() {//总共要加载的图片int size = (row-2)*(col-2); //64//每类图片加载的次数(张数)要为偶数int count=size/imageType.length; //imageType.length=16 即,16种图片for(int i=0; i<imageType.length; i++){for(int j=0; j<count;j++){type.add(imageType[i]);}}}//初始化网格的设计private void initGrid() {Random r = new Random();for(int i=0; i<row;i++){for(int j=0; j<col;j++){if(i==0 || i==row-1 || j==0 ||j==col-1){grid[i][j]=0; //四周不设置图片}else{int index=r.nextInt(type.size());grid[i][j]=type.get(index);type.remove(index);}}}}//设置位图的大小private void ititmBitmap(Context context) {int typeLength=imageType.length;image=new Bitmap[typeLength];//重新绘制for(int i=0;i<typeLength;i++){//创建一个Bitmap的对象Bitmap bitmap=Bitmap.createBitmap((int)width, (int)height, Bitmap.Config.ARGB_8888);//对Bitmap进行绘制Canvas canvas = new Canvas(bitmap);Drawable dwr = context.getResources().getDrawable(imageType[i]);dwr.setBounds(1, 1, 30, 30);dwr.draw(canvas);image[i]=bitmap;}}//在OnDraw函数中画出框格,每次进行重绘操作//设置背景颜色:Paint backGround = new Paint();backGround.setColor(Color.WHITE);//画一个矩形canvas.drawRect(0, 0, getWidth(), getHeight(), backGround);//设置网格线条的颜色Paint higth= new Paint();higth.setColor(Color.BLUE);//画网格for(int i=0;i<10;i++){//画横线、纵线canvas.drawLine(0, height*i, getWidth(), height*i, higth);canvas.drawLine(width*i, 0, width*i, getHeight(), higth);}//画image图片boolean test=true; //检测图片是否肖完for(int i=0;i<row;i++){for(int j=0;j<col;j++){if(grid[i][j]!=0){canvas.drawBitmap(image[Arrays.binarySearch(imageType, grid[i][j])],i*width, j*height, null);test=false; ////还有图片,说明未赢}}}4.7、接口API函数4.8、限制条件无明显限制条件5、主要算法设计说明5.1、程序描述主要功能:完成图片的消除功能,消除时画线功能,重新排列功能。

可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

5.2、功能完成连连看游戏的核心算法。

5.3、性能能够快速判断两图片是否能消除,并能在消除时进行画线操作。

隔一段时间,能够打乱顺序进行重新排列。

5.4、输人项用户点击、时间条5.5、输出项消除匹配的图片5.6、算法5.6.1、图片的连接判断对于选中的两个方块的销毁,它们必须符合下面3个条件:1、选中的两个方块图案相同。

2、选中的两个方块之间没有障碍物阻碍的情况下,可以用若干个垂直的直线线段连接起来。

3、这些将它们连接起来的直线线段的折点不超过两个(连接线由x轴和y轴的平行线组成)。

我们进行分情况分析:无拐点、一个拐点、两个拐点,设置flag进行标记这三种情况。

以下是相关代码://获得一个点可向上下左右走的范围public int[] extend(Point a){int i;int[] aLoc = new int[4];//向上for(i=a.y-1;i>=0 && grid[a.x][i]==0;i--){}aLoc[0]=i+1;//向下for(i=a.y+1;i<row && grid[a.x][i]==0;i++){}aLoc[1]=i-1;//向左for(i=a.x-1;i>=0 && grid[i][a.y]==0;i--){}aLoc[2]=i+1;//向右for(i=a.x+1;i<col && grid[i][a.y]==0;i++){}aLoc[3]=i-1;return aLoc;}//用于判断水平方向是否连通private boolean horizon(Point a, Point b){if(a.x == b.x && a.y == b.y) //如果点击的是同一个图案,直接返回false return false;int x_start = a.x <= b.x ? a.x : b.x;int x_end = a.x <= b.x ? b.x : a.x;for(int x = x_start + 1; x < x_end; x++)//只要一个不是-1,直接返回false if(grid[x][a.y] != 0){return false;}return true;}//用于判断垂直方向是否连通private boolean vertical(Point a, Point b){if(a.x == b.x && a.y == b.y)return false;int y_start = a.y <= b.y ? a.y : b.y;int y_end = a.y <= b.y ? b.y : a.y;for(int y = y_start + 1; y < y_end; y++)if(grid[a.x][y] != 0)return false;return true;}//只有一个拐点的情况private boolean oneCorner(Point a, Point b){Point c = new Point(a.x, b.y);Point d = new Point(b.x, a.y);if(grid[c.x][c.y] == 0){boolean method1 = horizon(b, c) && vertical(a, c);if(method1){corner=new Point(c.x, c.y);}return method1;}if(grid[d.x][d.y] == 0){boolean method2 = horizon(a, d) && vertical(b, d);if(method2){corner=new Point(d.x, d.y);}return method2;}else{return false;}}//有两个拐点的情况private boolean twoCorner(Point a, Point b){ll = scan(a, b);if(ll.isEmpty())return false;for(int index = 0; index < ll.size(); index++){Line line = (Line)ll.get(index);if(line.direct == 1){if(horizon(a, line.a) && horizon(b, line.b)){corner=new Point(line.a);corner2=new Point(line.b);return true;}} else{if(vertical(a, line.a) && vertical(b, line.b)){corner=new Point(line.a);corner2=new Point(line.b);return true;}}}return false;}//上面设计了一个类来判断两个拐点的情况//类的定义,构造函数如下class Line{public Point a;public Point b;public int direct;public Line(){a = new Point();b = new Point();}public Line(int direct, Point a, Point b){this.direct = direct;this.a = a;this.b = b;}}//对两个拐点的情况进行扫描,将扫描线放入Line类型的数组中private LinkedList scan(Point a, Point b){ll = new LinkedList<Line>();//Point c = new Point(a.x, b.y);//Point d = new Point(b.x, a.y);for(int y = a.y; y >= 0; y--)if(grid[a.x][y] == 0 && grid[b.x][y] == 0 && horizon(new Point(a.x, y), new Point(b.x, y)))ll.add(new Line(0, new Point(a.x, y), new Point(b.x, y)));for(int y = a.y; y < row; y++)if(grid[a.x][y] == 0 && grid[b.x][y] == 0 && horizon(new Point(a.x, y), new Point(b.x, y)))ll.add(new Line(0, new Point(a.x, y), new Point(b.x, y)));for(int x = a.x; x >= 0; x--)if(grid[x][a.y] == 0 && grid[x][b.y] == 0 && vertical(new Point(x, a.y), new Point(x, b.y)))ll.add(new Line(1, new Point(x, a.y), new Point(x, b.y)));for(int x = a.x; x < col; x++)if(grid[x][a.y] == 0 && grid[x][b.y] == 0 && vertical(new Point(x, a.y), new Point(x, b.y)))ll.add(new Line(1, new Point(x, a.y), new Point(x, b.y)));return ll;}//最后做总体判断,flag表示拐点的数目public boolean checkLink(Point a,Point b){if(grid[a.x][a.y] != grid[b.x][b.y])//如果图案不同,直接为falsereturn false;if(a.y == b.y && horizon(a, b)){flag=0;return true;}if(a.x == b.x && vertical(a, b)){flag=0;return true;}if(oneCorner(a, b)){flag=1;return true;}if(twoCorner(a, b)){flag=2;return true;}else{return false;}}5.6.2、图片消除的画线根据flag的值分情况分析:Flag=0时,从起点到终点画一条线即可Flag=1时,从起点到拐点,从拐点到终点画两条线Flag=2时,从起点到拐点,从拐点到拐点,从拐点到终点画三条线。

合集下载

基于Android的连连看游戏的设计与实现

基于Android的连连看游戏的设计与实现

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊基于android的连连看游戏[摘要]近年来,随着移动互联网和电子信息技术的飞速发展,手机游戏市场也得到了很大的发展。

移动应用市场和移动互联网形势的快速发展让Android应运而生,它是由谷歌公司推出的,因为它的开放性的基于Linux的开源手机操作系统的内核,不受运营商的束缚,丰富的硬件选项,开发商没有任何限制,并可以无缝集成谷歌应用服务优良的特性,很快就占据了智能手机平台系统领域。

进行研究和Android 平台的手机游戏发展,已成为一个非常有趣的巨大发展空间的区域。

在本文中,我们通过对Android系统架构和应用程序开发的初步研究设计了一个小游戏叫连连看。

它确定基于该系统的详细的要求分析系统的功能和性能要求。

而游戏的菜单界面,屏幕绘图,时间控制,布局算法,算法的连接,水平集,声音和动画一直细节设计。

在本场比赛的详细设计阶段。

首先,我们必须建立一个良好的游戏开发,包括下载必要的环境和安装Eclipse开发环境下载和intall ADT扩展。

之后,我们已经建立了开发环境,那么我们就必须实现对游戏的单一功能。

这些功能包括消除连接后,游戏countdowned开始游戏,暂停游戏,并选择游戏模式。

然后自定义游戏视图,可以根据由控制器提供的数据的布局显示图片,并提供功能包括,选择的亮点,连接和消除。

然后,我们将设计,它实现了主控制逻辑的游戏控制器。

最后,还有一个是该算法的设计,在本文,我们描述参与游戏包括游戏布局算法,连接算法和死锁判定算法的算法的最关键的部分。

完成这些步骤后,一个叫做人性,高效,稳定的和有趣的益智游戏,连连看已经实现。

[关键词] Android 连连看游戏 Java┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊Lianliankan game based on android[Abstract]In recent years, with the rapid development of mobile Internet and electronic information technology, mobile games market has been greatly developed. Android is in the rapid development of mobile application market and the mobile Internet situation arises at the historic moment, and it is from Google launched a open source mobile phone operating system based on Linux kernel, because of its openness, is not subject to the bondage of operators of the rich hardware selection, developers is not subject to any restrictions and can seamlessly combine the characteristics of excellent Google applications, soon will dominate in the field of smart machine platform system. The research and development of Android platform mobile games is a very interesting and very interesting field.This paper preliminarily studies the architecture and application development of Android system, and designs a game of games and games with Java language.. On the basis of the system needs to conduct a detailed analysis to determine the functional and performance requirements of the system, detailed design of the game menu interface, drawing on the screen, time control, layout algorithm, connectivity algorithm, set up checkpoints, sound and animation. In the detailed design stage of the game, first, we must build a good game development environment, including download and install the development environment Eclipse and install ADT Expansion Kit. After the development of the environment, and then the game individual features: the elimination of the game, the game countdown, the game, pause game and game mode select these features. Then customize the game view, defined view to display the layout data provided by the controller, and provide the feature selected, connection and elimination. Then the part of the design game controller is designed, the main control logic is realized. At last, it is the most critical algorithm for the algorithm design. The game layout algorithm, connectivity algorithm and deadlock decision algorithm are introduced.. After completing these steps, the final realization of auser-friendly, efficient and stable and full of entertainment mobile phone again and again to see the puzzle game.[Key word] Android Lianliankan game Java┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊目录1 引言 (1)2 需求分析 (2)2.1 系统功能需求分析 (2)2.2 可行性分析 (2)2.2.1操作可行性 (2)2.2.2技术可行性 (2)2.2.3经济可行性 (3)2.2.4社会可行性 (3)2.3技术以及开发工具介绍 (3)2.3.1 Java与Android的关系 (3)2.3.2 Java简介 (3)2.3.3 Java语言特性 (4)2.3.4 Android开发技术简介 (5)2.3.5开发工具简介 (6)3 系统总体设计 (8)3.1 系统基本流程设计 (8)3.2 系统模块设计 (8)4详细设计 (11)4.1 算法设计 (11)4.1.1 游戏布局 (11)4.1.2 连通算法 (12)4.1.3 僵局判定 (18)4.2 系统工程的创建 (19)4.3主要功能的实现 (21)4.3.1图案选中放大效果实现 (21)4.3.2 刷新地图道具功能实现 (22)4.3.3 消除提示按钮功能实现 (24)4.3.4 判断消除图片 (25)4.3.5 游戏中声音的配置 (31)4.4 系统运行界面图 (32)5结论 (38)6致谢 (39)7参考文献 (40)┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊1 引言Android是基于Linux内核的开放式移动平台的操作系统。

嵌入式系统课程设计--Android 实现爱情连连看(3G移动开发技术)

嵌入式系统课程设计--Android 实现爱情连连看(3G移动开发技术)

软件学院
课程设计报告书
课程名称嵌入式系统
设计题目 Android 实现爱情连连看(3G移动开发技术)专业班级嵌入式
学号 5
姓名
指导教师
2013 年 6 月
目录
1 设计时间 (1)
2 设计目的 (1)
3 设计任务 (1)
4 设计内容 (1)
4.1 总体设计 (1)
4.1.1 需求设定 (1)
4.1.2 系统开发环境 (2)
4.2 软件设计 (2)
4.2.1 软件开发环境介绍 (2)
4.2.2 主程序设计及流程图 (2)
5 总结与展望 (6)
参考文献 (7)
成绩评定 (7)
4.4 LCD显示模块
LCD显示模块采用了点阵液晶显示模块,液晶选用了显示容量为16*2个字符的字符型点阵阵液晶模块,该模块使用单5V电源供电,非常适合便携式的产品应用。

液晶显示模块电路图如图4-3所示。

图4-3 液晶显示模块电路图
4.5软件设计
为了使软件更安全、简洁,设计中使用了μC/OS—Ⅱ只是一个实时操作系统内核,它仅仅包含了任务调度、任务管理、时间管理、内存管理和人物间的通信和同步等基本功能。

没有提供输入输出管理、文件系统、网络等额外的服务。

但由于μC/OS-Ⅱ良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现。

而且μC/OS-Ⅱ自1992年的第一版以来已经有好几百个应用,是一个经实践证明好用而且稳定可靠的内核。

主函数在调用μC/OS-Ⅱ的任何其他服务之前,μC/OS-Ⅱ要求首先调用系统初始化函
资料仅供参考!!!。

基于Android系统的连连看详细设计说明书

基于Android系统的连连看详细设计说明书

基于Android系统的连连看详细设计说明书1、引言1。

1、编写目的本文档用于说明本游戏开发的详细过程,使委托方了解软件的内部结构,从而对连连看有更深入的了解,便于后期的维护和修改工作.1.2、背景说明:a.待开发软件系统的名称:基于Android系统的连连看游戏设计b.本项目的任务提出者:学校开发者:游戏开发小组用户:喜欢玩游戏的人项目开发环境:eclipse、Android系统平台1。

3、定义Android 连连看详细设计1.4、参考资料《Android开发指南》2、程序系统的结构连连看游戏结构如下:主要有四个大类:class GameView //游戏视类,处理游戏中的情况,包括界面生成,算法,一部分消息响应。

class GameActivity //用于处理游戏中的消息提示class StartActivity //用于菜单的设计Class SetActivity //用于菜单中游戏难度的设定3、菜单设计说明3.1、程序描述主要功能:用于为玩家提供操作提示,便于玩家了解游戏的规则.可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

3.2、功能主要有开始游戏、游戏设置、游戏规则、退出游戏等几个选项游戏设置的菜单3.3、性能当用户选择菜单时能够快速反应,以满足用户的要求。

3.4、输人项用户点击按钮3。

5、输出项五个菜单选项3.6、算法//定义菜单类,接口为OnClickListener,用于接收用户的单击消息.public class StartActivity extends Activity implements View。

OnClickListener //设计5个按钮用于接收按钮消息:private Button btnStart;private Button btnSet;private Button btnRole;private Button btnAbout;private Button btnExit;//在OnCreate函数中将它们初始化://获取按钮btnStart = (Button)findViewById(R.id.btnStart);btnSet = (Button)findViewById(R.id。

安卓连连看毕业设计

安卓连连看毕业设计

安卓连连看毕业设计安卓连连看毕业设计在如今的科技发展中,手机已经成为我们生活中不可或缺的一部分。

而手机应用程序的开发也成为了一个热门的行业。

作为计算机专业的学生,我对移动应用开发产生了浓厚的兴趣。

因此,我决定选择开发一款安卓连连看游戏作为我的毕业设计。

连连看是一种益智类游戏,通过连接相同的图片来消除它们。

这款游戏具有简单易懂的规则和有趣的玩法,深受广大玩家的喜爱。

在设计这款游戏时,我希望能够加入一些创新的元素,使游戏更加有趣和具有挑战性。

首先,我决定设计多个关卡,每个关卡都有不同的难度和挑战。

这样可以吸引玩家持续参与游戏,并且逐渐提高他们的游戏技巧。

我会在每个关卡中设置不同的限时,让玩家在有限的时间内完成游戏。

这将增加游戏的紧张感和刺激感。

其次,我还计划加入一些道具和技能,使游戏更加多样化。

比如,我可以设计一个炸弹道具,当玩家使用炸弹时,可以消除一定范围内的图片,帮助玩家更快地完成游戏。

另外,我还可以设计一个冰冻技能,可以暂停时间,给玩家更多思考的时间。

这些道具和技能的加入将增加游戏的策略性,使玩家更加投入其中。

除了游戏的设计,我还将注重用户界面的友好性和美观性。

我会选择一款简洁大方的主题,让用户在游戏中感到舒适和愉悦。

同时,我还会设计一个简单易懂的操作界面,让玩家能够轻松上手,并且提供一些提示和帮助,让玩家在游戏中不会感到困惑。

在开发这款游戏的过程中,我将充分利用所学的编程知识和技巧。

我会使用Java语言进行开发,并且使用安卓开发工具包(Android SDK)来构建应用程序。

我会使用合适的数据结构和算法来实现游戏的逻辑和功能。

在完成游戏的开发后,我还计划进行一些测试和优化工作。

我会邀请一些同学和朋友来测试游戏的稳定性和流畅性,并收集他们的反馈意见。

根据他们的反馈,我会对游戏进行一些调整和改进,以提高用户的体验。

最后,我还计划将这款游戏发布到安卓应用商店,让更多的人能够下载和享受这款游戏。

我相信,通过这个毕业设计,我不仅可以提高自己的技术能力,还可以锻炼自己的团队合作和项目管理能力。

基于Android游戏开发概要设计

基于Android游戏开发概要设计

基于Android游戏开发--疯狂连连看----概要设计说明书一、引言 (2)1.1、编写目的 (2)1.2、背景 (2)1.3、定义 (3)1.4、参考资料 (4)二、总体设计 (4)2.1、需求规定 (4)2.2、运行环境 (5)2.3、基本设计概念和处理流程 (5)2.4、结构 (6)2.5、功能需求与程序的关系 (6)2.6、人工处理过程 (7)2.7、尚未解决的问题 (7)三、接口设计 (8)3.1、用户接口 (8)3.2、外部接口 (8)3.3、内部接口 (8)四、运行模块组合 (9)4.1、运行模块组合 (9)4.1.1、播放器的基本界面模块 (9)4.2.2、播放器的播放界面模块 (10)4.2、运行控制 (10)4.2、运行时间 (10)五、系统数据结构设计 (11)5.1、逻辑结构设计要点 (11)5.2、物理结构设计要点 (12)5.3、数据结构与程序的关系 (12)六、系统出错处理设计 (12)6.1、出错信息 (12)6.2、补救措施 (12)6.3、系统维护设计 (13)一、引言学习安卓已经有了一段时间,在不断的学习与开发过程中,对Android开发平台也有了基本的认识。

阅读了一些相关资料之后,便开始了基于Android游戏开发的项目《疯狂连连看》,以此来完成它的概要设计说明书。

从该阶段正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的结构。

本说明书主要分为任务概述、总体结构、外部模块设计和测试设计。

1.1、编写目的本文档主要是《疯狂连连看》的概要设计说明书,为连连看的一些基本功能设计提供了主要的依据。

随着Android手机的不断发展,城市化发展越来越快,竞争也越来越大,一款休闲,益智的小游戏已成为当今时代人们缓解压力的不二选择,功能也不断的多样化,而概要设计正是体现出《疯狂连连看》的基本概念。

该文档面向所有项目组成员,使得项目组内成员对整个连连看的主要功能以及其概要的实现手段有一个宏观的把握,是整个连连看游戏开发的最雏形,同时也是最基本的引导性文档。

安卓版连连看毕业设计报告

安卓版连连看毕业设计报告

题目:安卓版水果连连看系名:计算机科学与技术系专业:软件工程学号:**********学生姓名:***指导教师:李*2012年12月19日1课题概述1.1课题意义目前随着移动设备越来越普及以及移动设备的硬件的提升,移动设备的功能越来越完善,移动设备的系统平台也日渐火热起来。

目前国内最常见的移动开发平台有Symbian,iPhone,Windows Phone以及当下正在逐步兴起的Android。

目前为止国内已经有很多Android系统的用户。

截止2010年第二季度Android系统的国内市场占有率已经过10%,在西欧以及北美智能手机市场占有率也在20%左右。

可见Android系统正在崛起之中。

但是对于Android系统的应用和开发在国内仍然属于起步和探索阶段。

急需要大量的相关技术和人员的投入。

下面首先介绍一下Android系统。

Android是基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google 开发,后由(Open Handset Alliance)开发。

它采用了软件堆层(Software stack,又名以软件叠层)的架构,主要分为三部分。

低层以Linux核心工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程式的一部分。

安卓版水果连连看是一款比较常见的安卓版游戏。

游戏主要功能是点击俩个相同的水果,如果中间可以通过小于等于三条直线连接,就可以将俩个水果消除掉。

游戏不同操作具有不的背景音乐。

还有道具。

刷新顺序和提示道具分别三次。

游戏设置不同的关卡,通过时间的不同来控制。

通过该课题,使学生更了解安卓游戏项目的开发。

1.2课题目标随着3G应用的不断开发推广,用户会越来越需要更加个性化、优质化的多媒体数据服务,用户希望能够随时、随地无缝利用3G网络进行办公、网上交易、游戏娱乐、欣赏影视节目、收听和下载音乐等。

基于Android的手机应用开发—连连看游戏的开发与实现

本科毕业设计(论文)题目: 基于Android的手机应用开发——连连看游戏的开发与实现姓名学院信息与通信工程学院专业自动化班级学号班内序号指导教师2010年6月基于Android的移动智能应用开发—连连看游戏的开发与实现摘要在地铁、机场和车站,越来越多的人低头玩着手机游戏,伴随着不断变化的表情,或皱眉或微笑。

手机已经成为人们生活的一部分,人们也渐渐习惯于将手机作为新的娱乐工具。

现在3G手机时代又即将开启。

2007年末,Android平台犹如一颗Google公司丢的重磅炸弹,在移动终端领域掀起了轩然大波。

Android凭借其开放性和灵活性渐渐赶超原有系统平台,成为近年来最热门的移动终端平台之一,在Android平台上进行游戏的开发,成为一个有趣并富有潜力的领域。

此次毕业设计的目的就是了解和掌握Android操作系统,并在Android平台上做简单的移动智能应用开发。

平台采用Java语言在eclipse上实现并测试。

该文章总体上可以分成两大部分,第一部分首先对Android平台的搭建作了简要的说明,然后介绍Android平台上开发的小游戏“连连看”的过程及方法;该游戏除了能实现传统“连连看”游戏的基本功能外,还有一些附加功能如帮助、背景音乐等。

第二部分介绍在Android平台上开发的一个程序,这个程序可以实现对视频的录制,并将录好的视频存储在手机的SD卡上这样一种功能。

其中第二部分可以被借鉴,进一步用于DVC编解码的实现。

也列举出了在调试程序时遇到的一些问题和解决方法。

将这两个程序放到真机上测试也收到了良好的效果。

关键词Android SD卡DVC 3GAndroid-based Mobile Intelligent Application Development –the development and implementation of the gameLianliankanABSTRACTIn the subway, airport and station, more and more people playing mobile games bow, accompanied by changing expression, or frown or smile.Phones have become a part of life, and people became accustomed to hand machine as a new entertainment tool.Now they are soon to open 3G cell phone era.The end of 2007, Android platform broke out like a blockbuster from Google Inc. in the field of mobile terminal has sparked an outcry.Android by virtue of its openness and flexibility gradually catch up with the original platform, become the most popular mobile terminal platforms. The game development in the Android platform has become an interesting and promising area.The graduation project is aimed to understand and master the Android operating system, and to do simple Android platform for mobile intelligent application development.The platform uses the java language, and is implemented and tested by eclipse.The article in general can be divided into two parts, the first part of the Android platform, a brief description of the structures, and then describes the development of Android platform game "Lianliankan" process and methods; the game in addition to achieve the traditional "Lianliankan" the basic function of the game, there are some additional features such as help, background music. The second part describes the development of Android platform, a program, this program can be recorded on video and video-recorded stored in the SD card such a function. The second part of which can be reference, and further for DVC codec implementation.Also cited a number of problems and solutions encountered in the debugger These two procedures into a real machine on the test also received good results.KEY WORDS Android sdcard DVC 3G目录第一章开发背景介绍----------------------------------------------- 21.1 手机应用市场描述---------------------------------------- 21.2 移动互联网进展------------------------------------------ 21.3 智能手机应用平台---------------------------------------- 41.4 Android平台介绍---------------------------------------- 61.5 Android开源性能展望------------------------------------ 9第二章连连看游戏开发过程介绍------------------------------------ 102.1 连连看游戏背景介绍------------------------------------- 102.2 连连看游戏开发平台介绍--------------------------------- 102.3 核心算法说明------------------------------------------- 122.3.1 数字化和布局-------------------------------------- 122.3.2 判断两个点的连通性-------------------------------- 132.3.3 布局无解的判断------------------------------------ 142.4 连连看游戏UI部分介绍---------------------------------- 142.5 代码的实现与分析--------------------------------------- 23第三章获取视频文件的程序设计------------------------------------ 293.1 Android多媒体开发背景介绍----------------------------- 293.2 MediaRecorder类的介绍--------------------------------- 293.3 设计思路概述------------------------------------------- 303.4 程序UI部分介绍---------------------------------------- 313.5 代码的实现与分析--------------------------------------- 33第四章遇到的问题及解决方法 ------------------------------------ 34第五章程序开发的心得体会 -------------------------------------- 40参考文献------------------------------------------------------- 41致谢--------------------------------------------------------- 42附录 1 ------------------------------------------------------- 43附录 2--------------------------------------------------------- 64第一章开发背景介绍1.1手机应用市场描述最近几年,国内手机市场发展势头迅猛,以Nokia、摩托、三星、等较大的手机制造商为主,又相继出现了数不胜数的手机生产厂家,其规模也在不断扩大,彩屏手机、彩信手机、智能手机纷纷上市,高像素照相手机、游戏手机、音乐手机开始纷纷登台亮相,现在又即将开启3G手机的时代,使视频通话成为了现实。

基于Android平台的连连看游戏的开发与实现【毕业作品】

BI YE SHE JI(20 届)基于Android平台的连连看游戏的开发与实现摘要手机游戏是消费者利用随身携带的智能移动终端设备能随时随地来进行的游戏。

近年来,随着移动互联网和电子信息技术的迅猛发展,手机游戏市场亦得到了很大的发展。

Android是在手机应用市场和移动互联网迅猛发展的形势下应运而生的,它是由Google公司推出的一款基于Linux内核的开源手机操作系统,由于其具有开放性、不受运营商的束缚、丰富的硬件选择、开发商不受任何限制和能无缝结合优秀的Google应用的特点,很快就称霸智能机平台系统领域。

进行Android平台手机游戏的研究与开发,成为一个非常有趣而又有很大发展空间的领域。

本文通过对Android应用开发的初步研究,设计出了一款基于Android平台的连连看小游戏。

在对系统进行详细需求分析的基础上,确定了系统的基本功能要求,对游戏的关卡设置、菜单界面、音效和动画、、时间控制、屏幕绘制、连通算法和布局算法进行了设计,并最终实现了一款风格清新可爱、娱乐体验丰富且性能高效稳定的手机连连看小游戏,它很好地缓冲了当今人们的紧张生活节奏,为一些枯燥时刻带来另样而欢快的享受。

关键词:手机游戏 Android 连连看ABSTRACTMobile games are the games which consumers can use portable smart mobile devices anytime, anywhere. In recent years, as the mobile Internet and electronic information technology rapidly developing, mobile games market has also been a great development. The mobile application market and the rapid development of mobile Internet situation make Android came into being, it is by Google Inc. launched a Linux-based open source mobile operating system kernel, because of its openness, free from the shackles of operators, rich hardware options, developers without any restrictions and can seamlessly integrate Google Apps excellent characteristics, soon dominate the smartphone platform system fields. Conduct research and development of the Android platform mobile games, having become a very interesting area of great development space.Based on the preliminary study on Android Application Development, a model based on the Android platform Lianliankan game has been designed succeed. In the system, based on detailed needs analysis to determine the basic functional requirements of the system, set up checkpoints on the game, the menu interface, sound and animation, and time control, screen drawing, connectivity and layout algorithms algorithm design, and ultimately achieve a fresh style cute, rich entertainment experience and the performance stable and efficient mobile Lianliankan game, it is well cushioned the pace of life today, tension, as some of the boring moments brings another kind and cheerful enjoyment.KEY WORDS: Mobile games Android Lianliankan目录第一章绪论 (1)1.1 引言 (1)1.2课题背景介绍 (1)1.2.1 手机的应用市场发展现状 (1)1.2.2 Android平台介绍 (2)1.2.3 连连看游戏发展介绍 (3)1.3 “连连看”游戏发展前景 (4)1.4 课题研究价值及意义 (5)1.5论文结构安排 (6)1.6本章小结 (6)第二章相关开发技术介绍 (8)2.1 Java技术简介 (8)2.1.1 Java与Android的关系 (8)2.1.2 Java简介 (8)2.1.3 Java语言特性 (9)2.2 Android技术简介 (10)2.2.1 Android架构简介 (10)2.2.2 Android开发技术简介 (11)2.3 本章小结 (12)第三章系统分析与设计 (13)3.1可行性分析 (13)3.1.1操作可行性 (13)3.1.2技术可行性 (13)3.1.3经济可行性 (13)3.1.4社会可行性 (14)3.2 系统需求分析 (14)3.2.1系统功能需求 (14)3.2.2 游戏基本规则 (15)3.3 系统设计 (15)3.3.1 系统基本流程设计 (15)3.3.2 系统模块设计 (15)3.4系统风格定位 (18)3.5 本章小结 (18)第四章系统的实现 (19)4.1开发环境的搭建 (19)4.1.1 JDK的安装与环境变量配置 (19)4.1.2 Android SDK 与Eclipse的安装与配置 (19)4.1.3 Android虚拟机AVD的配置 (19)4.2 系统工程的创建 (21)4.3主要功能的实现 (23)4.3.1图案选中放大效果实现 (23)4.3.2 刷新地图道具功能实现 (24)4.3.3 消除提示按钮功能实现 (25)4.3.4 判断消除图片 (26)4.4 系统运行界面图 (30)4.5 本章小结 (33)第五章系统测试与性能 (34)5.1软件测试 (34)5.1.1软件测试简介 (34)5.1.2测试方法 (34)5.1.3测试步骤 (35)5.2连连看游戏系统测试 (35)5.3游戏系统性能分析 (36)5.4本章小结 (37)第六章总结与展望 (38)6.1 总结 (38)6.2 未来工作展望 (38)致谢 (39)参考文献 (40)第一章绪论1.1 引言在手机应用市场和移动互联网迅猛发展的形势下,作为智能手机平台而基于LINUX内核的操作系统Android于2007年11月5日应运而生。

Android平台连连看游戏界面设计

图1 触屏区
本游戏的菜单交互方式分为三个菜单项,分别为重新开
始、重排列、退出。

详细功能如表1所示,在界面上的位置
表1 菜单项
功能
当点击这个选项时游戏会自动重新加载,
用户相当于打开一个新的游戏
当游戏出现解不开的情况时,用户点击这个按钮,
界面上剩下的牌会重新随机的排列
退出游戏
图2 菜单项
孔祥龙(1988-),男,内蒙古乌兰察布人,本科,助理教师、网络工程师。

研究方向:计算机软件、网络。

图3 布局文件代码
图3中的<LinearLayout xmlns:android…></LinearLayout>这段代码的意思是界面采用线性布局。

<ProgressBar…/>
段代码我们定义了一个进度条。

<Game. DrawGameView…/>这段是我们自己定义的视图类,用来在页面上画游戏界面,这样布局文件就设计好了。

 视图类的设计
视图类中需要画出游戏的背景图,包括游戏界面中的方格、每张牌的图案、牌被选中时的矩形框、两个牌的连接线。

基于android平台连连看游戏设计与实现毕业论文开题报告.钟康

[4]张洪斌.Java程序设计百事通[M].北京:清华大学出版社,2001.55-60.
[5]夏先波.Java JDK实例宝典[M].北京:电子工业出版社,2007.10-15.
[6]吴其庆.Java程序设计经典教程[M].北京:冶金工业出版社,2005.11-15.
[7]耿祥义,张跃平.Java 2实用教程[M].北京:清华大学出版社,2007.100-112.
另外还期望本次设计的游戏能够很好的实现跨平台的运行。就是说对于不同手机
本次设计的连连看游戏都可以很好的运行。
教研室审核意见:
教研主任(签章)年月日
学院审核意见:
分管教学副院长(签章)年月日
三、毕业论文预期成果及创新
本次设计预期完成一个基本游戏功能完善的连连看游戏,包括游戏开始、游戏暂停、游戏结束。各个游戏环节要保证正常运行,包括游戏开始时候的温馨提示,游戏过程中随时暂停随时继续的特性,以及游戏时间不多时加油提示语等。在游戏界面上,要求做到整个画面简洁舒适,游戏动画生动形象,游戏配音要准确清楚,给予玩家优良的游戏体验。除了这些基本的游戏功能能够实现外。本次设计的游戏还增加了难度选择功能,即玩家可以根据自己的水平选择相当的游戏难度。另外在游戏模式上也有所创新,除了基本的游戏模式外,还添加了麻将模式,即采用了特殊的麻将牌面,而且每张牌面都匹配了真人方言版语音,幽默搞笑,让人轻松游戏。另外还添加了挑战自我的模式,在这个模式中,每一局的游戏时间相对于普通游戏模式的游戏时间一定程度上缩短了一些,从而增加了游戏难度。玩家可在这个模式中挑战自我,提高水平。
二、毕业论文方案
本设计在Microsoft Windows 7操作系统上,基于java面向对象程序设计思想,,使用My Eclipse开发工具设计完成。游戏界面元素素材采用PhotoShop专业图片处理工具设计,音乐素材通过Audition音频处理工具处理。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档