基于android平台游戏的实现论文 - 图文(3)

2019-03-10 19:57

基于Android平台的连连看游戏的开发与实现 绪论

课题研究的价值和意义,对整体的论文结构做出了安排。为该系统后续的分析与设计提供了强大的背景支持与理论依据。

基于Android平台的连连看游戏的开发与实现 相关开发技术介绍

第二章 相关开发技术介绍

2.1 Java技术简介

2.1.1 Java与Android的关系

Android是一个以LINUX KERNEL为底层的操作系统,但它的开发利用是基于Java语言的。将Android与Java相比较,会发现它们具有很多相当性:

(1)相当的类/字节码格式

Android应用程序是利用Java语言编写成的,它先生成.java文件,再使用JDK的javac工具进行编译从而产生标准的Java字节码即.class文件。这些文件最后再转化成专为Dalvik(Android平台的Java虚拟机)设计的.dex格式文件。.dex格式可以认为是种被设计的更加优化的.class格式,好比把一个GIF格式的图像转换成更高级而等效的PNG格式,尽管它们拥有着完全不同的字节流。

(2)Java APIs与Android Runtime相当

Android Runtime使用了一个相当大的JavaSE APIs子集。这些来自于Harmony项目的APIs虽然都是全新的实现,但它们都是参考JavaSE APIS发展而来。

(3)Dalvik与JVM相当

经相关人士尝试发现,Android可以支持一个不完整的(但规模相当大的)Java 1.5 类库子集。其大到可以让一个复杂的JRuby项目几乎不用做任何修改便能在Android平台上运行起来。由此得知,作为Android平台的Java虚拟机Dalvik与纯Java虚拟机JVM是如此的兼容,例如Android能完全支持Java风格的线程和并发,甚至已深入到了高级的java.util.concurrent包。 2.1.2 Java简介

Java是一种跨平台的面向对象的高级程序设计语言,最早是由Sun公司 (Sun Microsystems Inc.)于1995年5月推出,并作为Java程序设计语言和Java平台的总称【4】。按应用领域可将Java平台划分为3种类型:JavaSE,是Java各应用平台的基础,主要由Java语言、JDK、JRE和JVM四大部分构成; JavaEE, 以JavaSE为基础,定义了一系列的协议、服务及API等,适用于开发多层式、分布式、以组件或WEB为基础的应用程序;JavaME,Java平台版本中最小的一个,目的是作为小型数字设备上开发及部署应用程序的一个平台,像手机、PDA、股票机等类似的嵌入式系统或者消费型电子产品。由于Java拥有着各种丰富资源与各

基于Android平台的连连看游戏的开发与实现 相关开发技术介绍

种活跃的论坛,来自各个领域的开发人员及大师们各自都对Java做出了贡献,促使Java在广大开发者的支持下发展至今。 2.1.3 Java语言特性

作为一种高级程序开发语言,Java拥有着许多重要的特性,主要表现有下: (1)简单的

Java语言在设计时参考了许多C/C++的语法与特性,使得学习过C/C++的开发人员可以在短时间内熟悉Java的使用。与此同时,Java又舍弃了C/C++ 中的一些较少使用的、难以掌握的、可能不安全的功能,如操作符重载、指针及多重继承等。 (2)面向对象的

Java语言是一种纯面向对象高级程序设计语言,它让您可以用面向对象的思考方式来设计并编写程序【5】。面向对象的好处在于您可以设计可重用的组件或直接接用别人已设计好的组件来开发出更具有弹性并更易维护的软件。Java语言是通过提供类、接口实现及继承等机制来体现出这种面向对象特色的。较C++只能对虚函数实现动态绑定,Java则是全面支持动态绑定。 (3)网络的

Java本身就是诞生于网络中,从最初的Applet、Socket、JSP/Servlet直到现在热门的Web Service,这都标明Java在网络服务等相关领域有着突出的贡献。例如在B/S开发方面,Java程序语言就要远远优于C++程序语言。 (4)解释的

程序要在一个平台上运行,首先必须得编译成这个平台所能理解的原始机器语言,但事实上不同的平台所能理解的原始机器语言不尽相同。为了解决这个在不同平台间都能运行的问题,Java引入了JVM(能执行Java字节码文件的虚拟操作系统),当运行Java程序时,JIT(Java实时编译器)就会将字节码编译成目标平台所能理解的原始机器语言。 (5)安全的

C++动态分配的内存空间或创造的指针总是必须在不需要的时候由开发人员编写代码予以回收,否则可能会导致程序或系统崩溃。然而Java提供了垃圾回收机制,让开发人员不再需要担心对象资源的回收问题。另外,Java还设计了异常处理架构,这使得开发人员可以很好地掌握程序中各种突发的异常情况。 (6)可移植的

要让程序移植到另一个平台上运行不是一件容易的事,这需要考虑诸多因素,例如数据类型在不同平台上所占的内存长度就是一个问题,而Java的数据类型在不同平台上所占的内存长度都是统一的,这是C/C++等没达到的。因而对于“一

基于Android平台的连连看游戏的开发与实现 相关开发技术介绍

次编写,到处运行”的这种梦想,Java提供了更高的可能性。

2.2 Android技术简介

2.2.1 Android架构简介

Android 是一种专门针对移动设备的软件集,其操作系统采用了分层方式,从上到下依次分为APPLICATIONS(应用程序层)、APPLICATION FRAMEWORK(应用程序框架层)、LIBRARIES & ANDROID RUNTIME(函数库和Android运行时)和LINUX KERNEL(Linux内核层)【6】。如图2.1所示:

图2.1 Android系统分层结构示意图

(1)APPLICATIONS。在Android平台上,已存在着一些关键的应用程序,如网页浏览器、邮件、日历、收发客户端程序短信等【7】。鉴于平台的开放性特点,更多富有特色且功能强大的Android应用程序正在被广大开发者共同努力参与研发中。

(2)APPLICATIONF FRAMEWORK。应用程序框架已随Android一同安装,但开发人员仍可以根据自己的需要来使用组件扩展该框架。该框架中,最重要的部分主要包含有:在控制应用程序的生命周期的同时维护着一个公共的\后退栈\来供用户导航的活动管理器;内容提供者,用来提供一些如联系人信息之类的需要在应用程序之间共享的数据;涉及非代码内容的资源管理器;让Android手机能随

基于Android平台的连连看游戏的开发与实现 相关开发技术介绍

时获取目前所处的位置信息的位置管理器;通知用户如收到信息、临近约会时间等事件的通知管理器。

(3)LIBRARIES (C/C ++函数库)。Android本机库是由一套C/C ++函数库构成的,它们服务于上层Android应用程序组件,并通过这些组件将功能传递给开发者使用【8】。这些函数库主要包括:浏览器引擎(采用的是Webkit库)、2D和3D图形库、SQL数据库(一些轻量级的SQLite数据库引擎)、媒体功能库以及界面管理器等。

(4)Android Runtime (Android运行时)。该层主要包含了Dalvik虚拟机和Java核心库,它们起到了将Android程序的运行过程有效优化的作用。

(5)LINUX KERNEL。Android操作系统是基于优化了的Linux内核之上的,在作为手机软硬件的连接层的同时,也让Android通过它完成进程管理、内存管理、网络以及其他操作系统服务工作。 2.2.2 Android开发技术简介

要想快速掌握Android技术,开发出Android应用程序,首先得对其开发技术的基础知识有个大概的了解,而Android程序都是通过各种组件(API)开发出来的,现将其重要组件归纳如下:

(1)当前活动程序Activity:这是Android开发中最常使用到的应用程序组件。凡是要通过窗口与用户进行互动交流的都离不开Activity。Activity具有生命周期,运行、暂停、停止等几个状态则贯穿于整个生命周期中,这些状态间的转换可通过调用一系列函数来完成,这些函数包括onCreate()、onRestart()、onStart()、onFreeze()、onResume()、onPause()、onDestory()、onStop()等【9】。如果想要开启一个新的activity,则可以调用startSubActivity(Intent,int)或startActivity(Intent),前者通常和函数onActivityResult(int,int, String,Bundle)联合着一起使用,这样可以通过函数返回结果传递给调用者想要的信息。

(2)图像显示View: android.view.View是Android中用来描绘块状视图的基类,在块状区域内还可包含对图像事件的处理。View是所有Widgets的基类,它的子类可以用来显示文本、图像等内容。通常进行的View方法调用有: 填充View,调用 onDraw (Canvas); 用XML 文件生成View调用inflate();测量View的高度和宽度调用onMeasure (int, int);onLayout()函数可以完成View的布局;当View中有按键操作时调用onKeyDown(int, KeyEvent);当View得到或失去关注时调用函数onFocusChanged (boolean,int);要设置View点击事件监听器调用setOnClilckListener()。

(3)Intent: Intent主要用来解决Android各应用组件之间的通讯。它对


基于android平台游戏的实现论文 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:长沙雅礼中学2009届高三第三次月考地理

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: