




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上题 目:安卓版水果连连看系 名:计算机科学与技术系专 业:软 件 工 程学 号:学生姓名:贺 晓 林指导教师:李 白 2012年12月19日专心-专注-专业1 课题概述1.1课题意义目前随着移动设备越来越普及以及移动设备的硬件的提升,移动设备的功能越来越完善,移动设备的系统平台也日渐火热起来。目前国内最常见的移动开发平台有Symbian,iPhone,Windows Phone以及当下正在逐步兴起的Android。目前为止国内已经有很多Android系统的用户。截止2010年第二季度Android系统的国内市场占有率已经过10%,在西欧以及北美智能手机市场占有率也在2
2、0%左右。可见Android系统正在崛起之中。但是对于Android系统的应用和开发在国内仍然属于起步和探索阶段。急需要大量的相关技术和人员的投入。下面首先介绍一下Android系统。Android是基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由(Open Handset Alliance)开发。它采用了软件堆层(Software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux核心工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程式的一部分。安卓版水果连连看是一款
3、比较常见的安卓版游戏。游戏主要功能是点击俩个相同的水果,如果中间可以通过小于等于三条直线连接,就可以将俩个水果消除掉。游戏不同操作具有不的背景音乐。还有道具。刷新顺序和提示道具分别三次。游戏设置不同的关卡,通过时间的不同来控制。通过该课题,使学生更了解安卓游戏项目的开发。1.2课题目标随着3G应用的不断开发推广,用户会越来越需要更加个性化、优质化的多媒体数据服务,用户希望能够随时、随地无缝利用3G网络进行办公、网上交易、游戏娱乐、欣赏影视节目、收听和下载音乐等。根据观察,在不久的将来,移动手机终端将会在以下若干方面具有新的发展。首先,提供智能提醒服务,手机能够与用户实现密切配合,并监控用户的个
4、性化设置(保持在本地或者云端),当重要时间点或关键事物需要用户注意时,手机会向用户发出“提醒”服务,服务包括日程提醒、交通状况、最佳行车路线、最佳泊位、优惠活动、实时新闻、体育赛事、天气情况、股市行情、好友活动、亲友生日等。其次,提供虚拟现实体验,手机可以借助传感器、周边设备了解到您的身边环境,并根据收集到的信息,智能的为您提供有用的信息,如在网络世界养的宠物,可以借助音频设备表达叫声,借助马达和位置传感器等传递其跳、跃等行为信息;也可以在用户购物时,提供相关的同类产品价格参考,提醒用户附近的那个卖场更物美价廉;根据实际场景,为用户及时提供正在操控的产品的使用方法提醒。接着,发挥物联网的优势,
5、借助无处不在的传感器,可以感知并分享到周围世界的海量信息,这些信息将在“云端”得到整合,帮助用户及时、准确的获得气息信息、交通路况。另外借助物联网,用户间可以方便、快速的分享资源,协助和交互。如进行端到端的多人游戏、照片分享、书籍分享、音乐分享等。然后,作为经济工具,在交通或者信息不发达的情况下,帮助用户找到最佳的市场,获得有价值的帮助信息,帮助用户从事的经济活动的收益率。最后,更加智能、安全的设备,随着智能手机的不断普及和更加智能,手机软件的更新、升级将会变得越发简单,并会为用户提供工具或信息,让用户有能力和权力决策那些内容可以浏览、下载或分享。在安全性上也将更加出色,能够十分有效的帮助用户
6、进行获取到的内容的管理,保护用户的个人隐私和基于手机的金融活动如电子钱包、在线支付、在线贸易等。 根据近半年来的学习Android平台游戏动画的经验,结合现在已有技术,基于游戏动画设计的基本原理。设计一个基于Android平台的连连看的游戏。主要包含游戏的关卡切换,游戏动画的实现。通过这一课题的研究设计与实现,更加理解面向对象的程序设计思想以及对安卓游戏的研发框架及其实现。1.3开发环境1、 开发工具Eclipse是一个市场占有率很高的Java IDE工具,Android推荐使用Eclipse来开发Android应用,并为其提供了专门的插件:Android Development Tools(
7、ADT)。2、 系统特点Android的底层建立在Linux系统之上,它采用一种软件叠层的方式进行构建。这种软件层结构使得层与层之间互相分离,分工明确。保证了层与层之间的低耦合,当下层的层下或者层内发生改变时,上层应用程序无须做任何改变。Android系统主要由5部分组成:l 应用程序层l 应用程序框架l 函数库l Android运行时l Linux内核应用程序层HomeContactsPhoneView SystemBrowserWindow ManagerActivity ManagerContent Providers应用程序框架Package Manage函数库Surface Mana
8、gerSQLiteWebKitlibcSSLAndroid 运行时Core LibrariesDalvik Virtual MachineLinux内核 Display DriverCamera DriverWifi Driver应用程序层为系统的核心应用程序,如电子邮件客户端、地图、浏览器等。这些程序主要都是Java编写,玩家主要通过这些应用程序来实现对手机的操作。应用程序框架提供了大量API供开发者使用。开发者自己开发的应用的功能模块,主要遵守了框架的约定,那么其他应用程序也能使用这个功能模块。函数库包含了一套被不同组件所使用的C/C+库的集合。一般来说,Android开发者不能直接调用这
9、套C/C+库集,但可以通过它上面的应用程序框架来调用此库。Android操作系统运行时由2个部分组成:Android核心库和Dalvik虚拟机。其中Android核心库主要为Java语言提供了大部分的功能,而虚拟机则负责运行Android应用程序。2Linux内核系统基于Linux2.6之上搭建的。在Android平台上Linux内核提供了安全性、内存管理、进程管理、网络协议栈和驱动模型等核心系统服务。并且linux也是硬件层与软件层之间的抽象层。2 课题设计2.1 连连看游戏的UI设计游戏的UI设计是对游戏中的用户界面的设计。和游戏的功能按钮的外观设计。通过网上搜索图片。从而设计出自己的游戏
10、界面。开场动画与游戏界面:2.2 游戏框架的搭建游戏音效 模块游戏逻辑模块程序控制界面游戏逻辑模块判断是否可以 消 除点 击 放 大 的 处 理刷新提示道具的 使 用首先基于Android平台特性,把本应用主要划分为三大模块分别为:程序控制界面,游戏逻辑模块,游戏音效模块。通过对游戏的实现进行分析。对游戏中的类分析。Activity中各个控件的设计。UI布局的设计以及各个控件被点击的动画以及切换页面时的动画设计。进行框架的搭建。主界面VIew的设计。与Dialog的设计。通过使用MVC的模式搭建项目环境:在com.ling.lianliankan的包里主要是界面的类。例如Activity以及自
11、定义的Dialog类。在com.ling.lianliankan.tools的包里分别是游戏中用到的工具类。在com.ling.lianliankan.view的包里放的是游戏中自定义的view类以及游戏中逻辑以及对界面的控制。在res中建立一个文件夹。下面主要放控制的各个动作。Animation的动画。主要是XML文件的一些配置。各个控件的点击动作之后的动画,以及画面切换时的动画效果。在raw文件夹下主要放置声音文件,方面在游戏中用soundpool 调用。分别在不同的点击事件发生后播放不同的声音。具体类的作用:类名具体功能LianliankanActivity主activity,用户看到的
12、主界面MyDialog游戏结束时弹出的dialogOnStateChangeListener状态改变接口OnTimeListener时间控制接口OnToolsChangeListener道具使用接口SoundPlay声音播放类BoardView游戏主要逻辑控制GameView游戏水果控制界面的绘制3 课题实现3.1 视图类View类的实现View类是游戏的主要显示区域。这一块包含了水果图标。点击事件发生时水果的变化。俩个水果连接时水果的消失与游戏中连接俩个水果之间的线的绘制。这个处理需要只要View有变化必须强制刷新界面。不然界面不能及时更新。无法使游戏实现一定的效果。onDraw()方法中主
13、要实现水果的绘制,路径的绘制,以及点击事件之后的水果放大的绘制。该类中实现了游戏中的逻辑,以及视图块的改变。点击到水果,水果放大强制刷新view调用GameView.this.invalidate();俩个水果可以消除点击道具3.2 主界面Activity的实现主界面Activity的实现,主要是SeekBar 与 ImageButton 与View 的显示。实现难点主要在于SeekBar 与游戏的同步。需要用到多线程与Handler的传递参数。ImageButton 的实现是功能键的实现。主要难点在于对界面的更新与实现的算法。主界面的截图:3.3 游戏结束时Dialog的实现游戏结束时有两种
14、状态:如果在每一关的规定时间内将所有水果消除,那么将会展现的是游戏胜利状态。由此可以进入下一关继续挑战。下一关比上一关时间少10秒。如果在规定时间结束还没有将所有水果消除,那么将会展现的是游戏失败状态。由此可以重新开始本关或者是进入下一关挑战。水果已经全部消除handler规定时间到Activity改变外观弹出dialog在游戏中通过Handler传递参数的不同而使界面显示两种不同的Dialog。截图如下:3.4 游戏主要逻辑的处理加入已选list中点击水果判断是否可以消除判断游戏中的俩个水果是否可以消除是游戏中的重点和难点。其中涉及到这俩个点是否可以通过小于等于3的线段连通的一个算法。首先要
15、将视图中的水果转化成程序中的一个int型的MAP数组。在该数组中存放的是水果种类,用int型进行表示。如果该位置的水果已经被消除那么该位置的map值为0 。其余有水果的为水果的种类值。点击事件发生之后,将第一次点击的水果加入一个List中,标记为已选择的。第二次点击事件发生之后,进行判断,首先判断否跟第一次点击时的水果的int值相等。如果不相等,将list清空,将该点加入list中。如果int值相等,那么进行是否可以连接的算法进行判断。是是否可以连通。第一种情况:横坐标或者纵坐标相等,且中间无水果第二种情况:第三种情况:判断是否可以连通的算法:判断俩个水果是否可以消除分三种情况。第一种情况:被
16、选的俩点处于一条直线,横坐标或者纵坐标相等,且该俩点中间的所有int值都为0 。那么可以直接消除;第二种情况,这俩个点可以通过其中间的第三点连通那么也可以消除;第三种情况是这俩点通过其余俩点可以连接,那么也可以消除。对这三种情况分别进行判断,最后返回该俩点是否可以消除。3.5 游戏中的工具功能实现工具主要是俩个工具。分别是刷新工具与提示工具。刷新工具的实现是把图标重新排列。提示工具是消除俩个可以连接的图标。这俩个工具被点击之后会有一个动画的效果。让用户清楚的看到该工具的使用。刷新工具使用以后的效果是水果图标重新排列。该功能的实现就是重新随即各个不为0的水果位置。提示工具是消除现可以连接的俩个水
17、果。该功能的实现是通过判断俩个水果能否消除的方法的基础上。重新对每一个现有水果进行判断。如果可以就立马消除。提示工具具体实现代码:刷新工具实现代码:3.6 游戏中声音的配置声音播放类的具体代码:游戏中的声音的实现。主要是通过soundPool来实现。先通过soundPool中的put方法将所有声音文件都放置其中。然后通过ID播放相应的声音。例如消除水果时,就用play的方法播放消除水果时的声音。从而使游戏有丰富的声音。添加了趣味性。4 总结经过一段终于完成了Android系统的“水果连连”游戏的设计与实现。经过多次测试,运行效果良好,基本能满足用户休闲娱乐的需求。在设计与实现此款游戏过程中,设计游戏内容,熟悉Android平台开发令我花费较多时间和精力。在开始编码程序前期,设计整体游戏框架结构,给每个模块明确分工,以面向对象的思想分析和解决问题的过程令我的编程思想有了较大的提升。在编码程序中期,根据所准备的需求进行具体编写代码和功能实现。遇到了较多的问题。例如Dialog的监听包和view的监听包不能同时导入,只能导入其中一个,那么在这个Activity里面需要同时监听这两种不同组件的解决方法;由于Activity是栈式管理,先打开的Activity最后关闭,那么如果在任意一个Activity中随意的关闭整个程序等等。在编码后期,主要工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第2.6讲 指数与指数函数(原卷版)-2024年高考数学一轮复习精讲精练宝典(新高考专用)
- 菏泽黄底真石漆施工方案
- 第三单元课外古诗词教学设计 2024-2025学年七年级上册同步
- 博物馆拆迁合同范本
- 优化公司供应商管理的工作计划
- 构建班级学习共同体的工作策略计划
- 老年肺炎区别护理
- 公司生产工作计划改善生产线平衡性
- 农业发展安全服务保障蓝图计划
- 小班集体游戏的安排与实施计划
- AOI直通率持续提升报告
- 地铁出入口雨棚施工工艺
- 掘金之旅:金融不良资产处置十八般武艺
- 双机抬吊法吊运箱梁安全控制要点课件
- 房建工程样板节点参考照片图文并茂
- 2023年高考语文全国乙卷《长出一地的好荞麦》解析
- ICC国际冠军杯传播及招商方案
- 丰田车系卡罗拉(双擎)轿车用户使用手册【含书签】
- 商品价格表(全)
- 管理系统中计算机应用详细课件
- 危险废弃物管理培训资料
评论
0/150
提交评论