收藏 分销(赏)

国内外手机游戏的研究现状.doc

上传人:w****g 文档编号:2467902 上传时间:2024-05-30 格式:DOC 页数:44 大小:607.04KB
下载 相关 举报
国内外手机游戏的研究现状.doc_第1页
第1页 / 共44页
国内外手机游戏的研究现状.doc_第2页
第2页 / 共44页
国内外手机游戏的研究现状.doc_第3页
第3页 / 共44页
国内外手机游戏的研究现状.doc_第4页
第4页 / 共44页
国内外手机游戏的研究现状.doc_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、国内外手机游戏的研究现状 作者: 日期:2 个人收集整理 勿做商业用途目录第一章 引言11。1 国内外手机游戏的研究现状11。2 手机游戏的技术分类11。3 研究意义2第二章 基于J2ME的手机游戏开发平台概述42。1 什么是J2ME42。2 J2ME 平台体系结构42。3 KVM52.4 CLDC62。5移动信息设备描述(MIDP)82.6MIDP 应用程序82.7 MIDP UI 组件9第三章手机游戏开发的相关知识及工具123。1 手机游戏的画面123。2手机游戏中的按键133。3线程使用143。4 手机硬件平台特点143。5 手机游戏开发工具软件15第四章 手机游戏一“逃亡者”的设计与实

2、现174.1游戏描述174.2可行性研究174。3游戏设计174。4详细编码设计194。5程序打包、下载安装与运行194。6 最后效果图20第五章 结束语21参考文献22致 谢23附录24第一章 引言1。1 国内外手机游戏的研究现状近年来,因特网在国内迅速普及,导致了网络游戏的高速发展。同样手机的普及,导致了手机游戏市场呈现爆炸式的发展。尤其是国内外巨大的手机拥有量,更是让商家看到了商机,手机游戏市场利润将会十分丰厚。面对潜力如此巨大的手机游戏市场,各游戏开发商、运营商、服务商以及手机终端厂商等都纷纷开始了各自的应战准备,以便抢占商机。诺基亚、索爱、摩托罗拉等各大手机厂商开始不断的提升手机在游

3、戏方面的性能,同时还在手机操作系统方面采用开放式的平台,方便用户享受不同的手机游戏业务1 J2ME开发网J2ME中文教程PDF电子文档 ,2005-9-5。而国内游戏开发商,如盛大、网易等公司,纷纷跻身手机游戏开发商行列.新浪、搜狐等著名的门户网站,也纷纷涉足手机游戏领域,相继开辟了各自的手机游戏频道和栏目,其他一些游戏网站也都全面加快了手机游戏开发的步伐。目前SUN公司的J2ME CLDC/MIDP环境和高通公司的BREW(Binary Runtime Environment for Wireless)客户端程序是国内外游戏开发的两大主要平台。中国电信业巨头中国移动建立了无线Java增值服务

4、体系,推出了基于SUN公司的J2ME 环境的“百宝箱”业务,包括游戏类、商务类、生活类等丰富的数据服务。中国移动用户只要使用支持Java的手机,通过GPRS的无线上网方式,访问移动梦网门户的“百宝箱”服务菜单,就能方便地下载各种由Java语言编写的应用程序。而中国联通与高通公司合作,采用高通公司的BREW平台技术,推出了“神奇宝典业务,中国联通用户可以从联通公司的应用下载服务器上以无线方式下载应用程序。文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络1。2 手机游戏的技术分类手机游戏按实现的技术分,可分为嵌入式游戏、浏览器游戏、基于J2ME和其它的解释语言的游戏、基于C+应用程序和

5、其它编译语言的游戏等。1. 嵌入式游戏嵌入式游戏在出厂时就固化在手机的芯片中,像Nokia的“贪吃蛇”就是一个经典的例子。这些游戏是为手机量身定做,能够充分发挥特定手机的强大性能,从而达到其他类型的游戏所无法达到的效果,而且嵌入式游戏在运行过程中不会让用户产生费用。但是这些游戏是依据手机生产厂商的平台进行开发的,出厂时设置了几款游戏,玩家就只能在这几款游戏当中进行选择,而不能根据用户自己的喜好对游戏进行升级、删除等操作,所以嵌入式游戏的缺点也是明显的,无法给玩家带来新鲜感,玩家容易对固定的几款游戏产生厌倦。2。 浏览器游戏WAP是一种用手机上网的网络服务。进行WAP游戏时,通过手机自带的WAP

6、浏览器来浏览手机网站上的页面,并通过页面中描述的内容来进行游戏。形式上类似于网上常见的一些心理测验之类的交互手段。WAP游戏没有图片和容量的限制,但这类游戏大多采用文字交互方式,这样游戏性就不强,缺乏直观感觉。而且在收费上,WAP游戏费用比较高,因为在游戏的过程中,您不仅需要向服务商交纳一定的费用,而且同时要向中国移动或中国联通交纳一定的流量费用。3。 基于C+应用程序和其它编译语言的游戏使用C+应用程序和其它编译语言开发游戏也是一种较好的开发方式.编译语言程序能提供更好的控制用户界面,而且编写的应用程序相比用脚本语言编写的程序,效率更高、使用的内存更少,并且执行得更快。但由于这些编译语言往往

7、不具有跨平台性,而且由于编译语言的特点,往往需要较长的开发周期。4。 基于J2ME和其它解释语言的游戏 Java 2 Micro Edition (J2ME)是一种针对移动电话和PDA等小型设备的Java语言.采用J2ME极大的提高了手机支持游戏的能力.它有比WAP游戏更易控制的界面,J2ME游戏摆脱了纯文字交互的方式,它允许使用图形动画,并且可以通过无线网络连接到远程服务器。而且Java是面向对象程序设计的语言,它最大的特点是一次编写、到处运行,即平台无关性。现在支持Java的手机比较普及,它也已经成为目前比较好的移动游戏开发环境。1。3 研究意义对手机功能的扩充.手机游戏成了电信增值业务中

8、一项主要的应用,在公交车等公共场合不时会看到拿着手机玩游戏的人。相比较早开发的“贪吃蛇、“俄罗斯方块”等手机游戏,如今的手机游戏,无论是从视觉效果、听觉效果还是游戏的可玩性来说,都要精彩的多。在全球,移动电话数量巨大,除美国之外,其他各个发达国家拥有手机的人数比拥有计算机的人数还多.在我国,手机拥有量甚至超过了美国的人口数量,而且每个月手机数量还正以惊人的速度递增着.手机市场的高速增加带动了手机游戏市场的急速膨胀,基于JAVA、BREW等技术平台的手机游戏市场规模纷纷呈现几何增长态势2 林邦杰Java程序设计入门教程中国青年出版社,2001-9-15。第二章 基于J2ME的手机游戏开发平台概述

9、2.1 什么是J2MEJ2ME 是SUN 公司针对嵌入式、消费类电子产品推出的开发平台,与J2SE 和J2EE 共同组成Java 技术的三个重要的分支。J2ME 实际上是一系列规范的集合,由JCP 组织制定相关的Java Specification Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK 测试,这样确保兼容性3。2。2 J2ME 平台体系结构J2ME 平台是由配置(Configuration)和简表(Profile)构成的。配置是提供给最大范围设备使用的最小类库集合,在配置中同时包含Java 虚拟机。简表是针对一系列设备提供的开发包集合。

10、在J2ME 中还有一个重要的概念是可选包(Optional -Package),它是针对特定设备提供的类库,比如某些设备是支持蓝牙的,针对此功能J2ME 中制定了JSR82(Bluetooth API)提供了对蓝牙的支持。目前,J2ME 中有两个最主要的配置,分别是Connected Limited Devices Configuration(CLDC)和Connected Devices Configuration(CDC)。他们是根据设备的硬件性能进行区分的4 黄聪明JAVA移动通信程序设计J2ME MIDP清华大学出版社。CDC 的硬件参数:(1) 2M 以上内存。(2) 具有网络连接能

11、力,通常为无线网络。(3) 需要实现java 虚拟机规范的全部功能。(4) 32 位或者64 位的处理器。CLDC 的硬件参数:(1) 512 KB 以下内存(2) 有限能源供应(通常使用电池)。(3) 有限或非持续网络连接。(4) 简单的用户界面.(5) 16 位或者32 位的处理器。从上述的标准中我们不难看出CLDC 主要针对那些资源非常受限的设备比如手机、PDA、双工寻呼机等.而CDC 主要面对那些家电产品,比如机顶盒、汽车导航系统等。简表是以配置为基础的,例如Mobile Information Devices Profile(MIDP)就是CLDC 上层的重要简表.与配置的纵向特性不

12、同的是,简表是横向的。下图2-1是J2ME 体系结构的框图:The J2ME EnvironmentJ2ME AppliacationLayerMIDLetMIDLet Class LayerMIDLet Application Manager 图2-1J2ME 体系结构框图(1) 主机操作系统层(Host Operating System Layer):这一层为特定硬件设备的操作系统层。(2) Java虚拟机层(Java Virtual Machine Layer):这一层是Java虚拟机的一个实现,它是为特定为特定设备的主机操作系统定制的,支持一个特定的J2ME配置。(3) 配置层(Con

13、figuration Layer):配置层定义Java虚拟机的功能和特定类别设备上可用的Java类库的最小集。从某种程度上说,一个配置定义了Java平台的功能部件和库的共同性,开发者可以假设这些功能部件和库在属于某一特定类别的所有设备上都是可用的。这一层对用户是透明的,但它对描述的实现者非常重要.(4) 描述层(Profile Laver):描述层定义了特定类别设备上可用的应用程序编程设备的主机操作系统定制的,支持一个特定的J2ME配置。在手机上,KVM, CLDC, MIDP分别实现了J2ME体系结构中的Java虚拟机层、配置层和描述层。2.3 KVMCLDC 和 MIDP都是运行在Sun公

14、司的KVM上。KVM是一个专门为小型、资源受限设备所设计的紧凑的、便携的Java虚拟机。Java虚拟机是Java程序语言的核心,只要Java程序在执行,Java虚拟机也必定在执行。Java虚拟机是实际执行Java程序的引擎,也是Java语言具有这么多优良特色的关键所在.当你执行Java程序时,程序内的指令其实并不是由硬件直接执行,而是由一个特别的软件一一读取这些指令来执行的.简单地说,Java程序不是被底层的CPU直接执行,而是被“虚拟CPU执行的,所谓的虚拟CPU其实就是计算机上执行的一个特别软件。虚拟机的优点甚多,比如移植方便,只需要移植虚拟机和相关的支持程序库到新的硬件架构上,所有上层的

15、应用程序都不需要更动就完成移植了。虚拟机的另一个好处是它在计算机软硬件间加入一抽象层来分离和保护,可以防止恶作剧的程序暗中搞鬼5 卢军J2ME应用程序开发手机、PDA程序开发捷径中国铁道出版社.2.4 CLDC 2000 年5 月,Java Community Process(JCP)公布了CLDC1.0 规范(即JSR30)。作为第一个面对小型设备的Java应用开发规范,CLDC是由包括Nokia,Motorola和Siemens在内的18 家全球知名公司共同协商完成的.CLDC是J2ME核心配置中的一个,可以支持一个或多个profile。其目标主要面向小型的、网络连接速度慢、能源有限(主要

16、是电池供电)且资源有限的设备,如手机、机顶盒、PDA 等.CLDC 的核心是虚拟机和核心类库。虚拟机运行在目标操作系统之上,对下层的硬件提供必要的兼容和支持;核心类库提供操作系统所需的最小的软件需求。1核心类库2虚拟机可选包Profile配置操作系统图22 CLDC 标准构架2.4。1 CLDC 的目标(1) 为小型的、资源受限的连接设备定义一个Java 平台标准.(2) 允许向上述设备动态的传递Java 应用和内容。(3) 使Java 开发人员能够轻松的在这些设备上进行应用开发。2。4.2 CLDC 的整体需求(1) 能运行在绝大多数的小型的、资源受限的连接设备上.(2) 用CLDC 为上述

17、设备开发的应用尽可能的不使用设备的本地系统软件。(3) 定义能应用在绝大多数上述设备上的最小子集的规范。(4) 保证在不同类型上述设备之间代码级的可移植性和互操作性。2.4。3 CLDC 的硬件需求由于CLDC 要面向尽可能多的设备,而这些设备所使用的硬件又各不相同.因此CLDC 规范中并没有指明需要某种硬件支持,只是对设备的最小内存进行了限制.CLDC 规范中要求硬件必须达到以下要求:(1) 至少160KB 的固定内存以供虚拟机和CLDC 核心类库使用。(2) 至少32KB 的动态内存以供虚拟机运行时使用(堆栈等)。这里所说的固定内存是指拥有写保护,不会因关机而抹去的ROM.对于具体的设备的

18、具体实现,这些需求也可能有变化.这里所规定的160KB 是CLDC 规范中的要求,实际也可以是128KB 左右。2.4。4 CLDC 的软件需求和硬件类似,CLDC 上运行的软件也是多种多样的.例如,有些设备支持多进程操作系统或者支持文件系统;而有些功能极其有限的设备并不需要文件系统。对于这些不确定性,CLDC只定义了软件所必须的最小集合.CLDC 规范中要求操作系统不需要支持多进程或是分址空间。2。4.5 CLDC 的功能范围在CLDC1。0 版本中定义了以下功能:(1) Java 核心语言与Java 虚拟机的特性(2) 核心Java 类库(3) 输入/输出(4) 对网络的支持(5) 对安全

19、性的支持(6) 对国际化的支持2.4.6 CLDC特征(1) 安全(2) 遵守Java语言规范(3) 遵守Java虚拟机规范(4) 要求类文件验证J2EE和J2SE为桌面计算机和服务器的企业级应用和开发提供了非常丰富的库函数.不幸的是这些库需要几十兆的内存来运行,因此并不适合于资源受限的小型设备。所以CLDC针对小型受限设备重新制定了一个类库.为了保证应用程序的兼容性和可移植性,包括进CLDC的大多数类库都是J2SE中规定的子集,其它一些是由CLDC规定的专用于移动设备的类。包括:从J2SE中继承的类、国际化支持类、系统属性类、CLDC专用类四个方面6 JSR-000139 Connected

20、 Limited Device Configuration 1.1.2。5移动信息设备描述(MIDP)J2ME提供了描述的概念,使得可以为特定的设备家族定义相同的Java平台。描述可以满足两种明显不同的可移植性需求:(1)描述为在一个特定的设备家族实现应用提供了完整的工具,比如传呼机、机顶盒、移动电话、洗衣机或智能玩具。(2)可以创建一种描述来支持重要的、一致的一组应用,这些应用可能会在几各不同的设备上运行。简单地说,描述就是应用和市场的设备家族之间的协议。处于同一个设备家族中的所有设备都必须实现其描述所定义的特征,并且要求应用只使用这个特定描述所提供的功能.在实现层次上,描述被简单地定义为应

21、用在特定配置上的Java API和类库的集合,同时为市场中特定的设备家族提供了附加的面向特定领域的功能7 。现在,己经有了五个规范化了的描述,如表2-1表21 五个规范化描述描述名称下层配置Mobile information device profile(MIDP)CLDCPersonal digital assistant profileCLDCFoundation profileCDCPersonal profileCDCRMI profileCDC2.6MIDP 应用程序CLDC和MIDP组合起来为创建移动电话应用程序提供了完整的环境。MIDP应用程序或者称为MIDlet. 其模型如图

22、23所示The J2ME EnvironmentJ2ME AppliacationLayerMIDLetMIDLet Class LayerMIDLet Application Manager图23MIDlet应用框MIDlet 有三个状态,分别是pause、active 和destroyed。在启动一个MIDlet的时候,应用管理软件会首先创建一个MIDlet 实例并使得他处于pause 状态,当startApp()方法被调用的时候MIDlet 进入active 状态,也就是所说的运行状态。在active 状态调用destroyApp(booleanunconditional)或者pause

23、App()方法可以使得MIDlet 进入destroyed 或者pause 状态。值得一提的是destroyApp(boolean unconditional)方法,事实上,当destroyApp()方法被调用的时候,AMS 通知MIDlet 进入destroyed 状态。在destroyed 状态的MIDlet 必须释放了所有的资源,并且保存了数据.如果unconditional 为false的时候, MIDlet 可以在接到通知后抛出MIDletStateChangeException 而保持在当前状态,如果设置为true 的话,则必须立即进入destroyed状态。下图24说明了MIDl

24、et 状态改变情况:本文为互联网收集,请勿用作商业用途个人收集整理,勿做商业用途StartPausedDestroyedstartApppauseAppdestroyAppActivedestroyApp图2-4 MIDlet 状态图2.7 MIDP UI 组件In 组件与低级绘制相比,用在游戏开发上的机会较少,但还是会到。所谓UI组件,是指继承了javax.microedition。lcdui。Screen类的javax。micr oedition。ledui.Alert,javax。microedition。lcdui.Form,javax。microedition。lcdui。TextB

25、ox,javam microedition.lcdui。List等.下图为我们展示了整个LCDUI 包的体系:DisplayCommandListerTickerDisplayableCommandCanvasScreenGraphicsImageFont 图25 LCDUI包的体系Screen 类属于高级图形用户界面组件, Canvas 是低级图形用户界面组件,在同一时刻,只能有唯一一个Screen 或者Canvas 类的子类显示在屏幕上,我们可以调用Display 的set Current()的方法来将前一个画面替换掉,我们必须自行将前一个画面的状态保留起来,并自己控制整个程序画面的切换。

26、同时我们可以运用javax.microedition。lcdui.Command 类来给我们的提供菜单项目的功能,分别是:Command.BACKCommand、Command。 CANCEL、Command.EXIT、Command.HELP、Command。ITEM、Comm and.OK、Command.SCREEN 和Command.STOP,我们在Display able对象中定义了add Command()和remove Command()两个方法,这就意味着我们可以在高级UI 和低级UI 中同时使用Command 类,同时我们通过注册Command 事件来达到事件处理的目的,即C

27、ommand 必须与Command Listener 接口配合使用才能反映用户的动作。文档为个人收集整理,来源于网络本文为互联网收集,请勿用作商业用途与高级UI 相比,低级UI 就自由很多,任何时候我们可以调用repaint()产生重绘事件,调用完了repaint()会立刻返回,调用paint()回调函数则是由另一个专门的线程来完成。底层事件大致可分为三类:Press Events(按键事件),Action Keys(动作按键,PointerEvents(触控事件)。我们将围绕这三个主题来介绍一下这种事件的用法:键事件的几个核心方法为:keyPressed(),keyReleased(),ke

28、yRepeated(),当按键按下时会触keyPressed(),当松开按键时,会触发keyReleased(),当长时间按住按键时会触keyRepeated(),但是RepeatEvents 不是JTWI 要求强制支持的,所以使用之前要进行测试,看设备是否支持。在Canvas 里面我们每按下一个按键都会触发keyPressed()函数,并传入相应位置的整数值,我们在MIDP 规范中可以很容易的发现,KEY_NUM0KEYNUM9 十个常数分别代表键盘上的0-9还有两个功能键,KEY_STAR,KEY_POUND,如果我们传入的值小于0,代表我们传入了不合法的keycode,某些机器上还支持连

29、续按键响应,但这并不是JTWI 规定要支持的,所以我们在进行实际开发之前一定要用我们前面讲到的hasRepeatEvents()方法来进行判定.动作按键主要针对游戏来设计的, 在API 中定义了一系列的动作事件:UP,DOWN,LEFT,RIGHT,GAME_A,GAME_B,GAME_C,GAME_D,当按下这些按键时会映射到我们自己为每个按键事件编写的方法,来完成一些动作。不过我们在MIDP2。0 里我们已经有专门的游戏开发包了,所以我在这里就不重点介绍了。本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络触控事件主要面向高端设备, 并非JTWI 要求强制支持的,其核心方法为

30、:pointerPressed(),pointerReleased(),pointerDragged(),分别对应我们通常所用的移动设备手写笔的点,击,拖拽几个动作,我们在这三个方法里可以定义相应的事件处理函数.在索爱P910C 这样的高端手机上,支持屏幕的触控事件,我们在屏幕上点击,可以引发pointerPressed()函数,并传入当时位置的坐标,放开后,会引发pointerReleased()函数,同样也会传入坐标,具体的使用方法和keyPressed()以及keyReleased()大同小异.第三章手机游戏开发的相关知识及工具3。1 手机游戏的画面MIDlet 类本身并没有提供直接操作

31、画面显示的功能,因此在MIDlet类的子类中也没有直接操作画面显示的功能.因此,我们要使用提供了管理画面显示功能的javax.microedition.lcdui。Display类。这个Display类可以javax。microedition.lcdui.Display类的子类显示在画面上.Displayable类的子类大致说来可以分为两种,分别为用来进行线与图形,图像的低级描绘类,与用于显示警告与文本的输入,选择列表等UI组件类。前者是javax.micredition.lcdui。Canvas类后者是javax.microedition. lcdui.Screen 类与其子类(Alert,

32、FomList,TextBox类等)之旬的关系。它们之旬的关系如下图31:ObjectDisplayCanvasScreenAlertFormListTextBoxObject图31 画面显示类图用来显示画面用的Display对象,可以从Display类的Static方法DisplaygetDisplay(MIDlet) 值获取。通过在获取的Display对象,就可以让Displayable对象显示在画面上。 MIDP中可以使用的图像格式为PNG格式。要获取图像,必须使用javax。microedition.lcdui.Image类的Static方法。Image类的Static方法,提供了从b

33、yte数据中提取Image对象,以及指定与MIDlet相同JAP文件的路径后获取对象的功能。创建Image对象的Static方法:(1)ImagecreateImage(byteimageData,int imageOffset,int imageLengt)(2)Image#createImage(int souce)(3)ImagecreateImage(int width,int height)(4)Image#createImage(String name)为了减少额外错误处理,在调用出来的时候要进行try-catch或throw。下面的代码展示了如何创建Image对象:Image i

34、mg;Tryimg=Image。createImage(“/mi.png”)catch(java.io.IOException e)上一章提到了MIDP UI 的组件,这里不在做解释。Form类 是能够将一个以上的图像文本,Item类的子类(ChoiceGroup,DataField,Gauge,ImageItem)混合显示的组件。List类,与PC的UT组件中的List组件一样,是用来显示项目的列表,以让用户来进行选择为目的的组件。也可以是附有选择按钮的列表与附有复选框的列表。文 本 框 是一个允许用户进行编辑的文本区域。一个文本框有一个足以容纳的最大字符数量,具体的大小依赖于不同M工DP的

35、实现或者是移动电话的存储器大小.在文本框中字符显示的顺序和格式由设备决定。当文本框中的字符数量大于一次被显示的字符数量时用户可以通过滚动来编辑一个文本框中的部分字符。Alert ,Form,List,TextBox各类的超类Screen由于与Canvas类一样,是继承了Displayable类,因此可以用Display # setCurrent (Displayable)方法来将其显示在画面上。3。2手机游戏中的按键在MIDP中,每一个按键事件将产生一个按键代码.在MIDP的Canvas类中定义的按键代码如下所示:KEY_NUM0,KEY_NUM1,KEY_NUM2, KEY_NUM3,KEY

36、_NUM4,KEY_NUM5,KEY_UM6, KEY_UM7,KEY_UM8,KEY_NUM9,KEY_STAR和KEY_POUND。上述按镶代码包括数字09、星号和号。在某些特别的移动设备上可能还有其他按键,但是在MIDP中规定的最低限度的按键就是上面定义的这些。使用这些按键可以确保应用程序在任何符合MIDP规范的移动设备上运行.在Canvas类中,定义了一些通用按键值,游戏按键中的UP、DOWN、LEFT、RIGHT、FIRE、GAME_A、GAME_B,在MIDlet运行时,这些按键的按键值可以通过getKeyCode()方法确定8 洪维恩Java 2面向对象程序设计中国铁道出版社9

37、焦祝军、张威J2ME无线通信技术应用开发北京希望电子出版社。3。3线程使用我们所创建的动画,是使用线程把所准备的多张图像按顺序描绘出来。所谓的线程就是指程序的运行单位,使用线程可以同时进行处理。在这里,为了要做出线程,我们会用到Java。Lang.Runnable接口.同样的处理虽然也可以用到java.lang。Thread类与Java。util。Timer类来进行,不过它们都需要创建出继承各类的另一个类,所以还不如使用Runnable接口。将Runnable接口作为实现的类,必须将Runnable接口的run()方法重新定义。在这个run()方法中,将要编写以线程所处理的内容。下面的代码为在

38、run()方法内调用Canvas#repaint()方法来进行再描绘的范例。Import javax。microedition.lcdui.*Class ThreadTest extends canvas implements RunnablePublic void run( )Repaint( );Protected void paint(Graphics g)只在以Runnable接口为实现的类中再定义run() 方法,是不能让线程运行的。要运行的时候必须使用到Thread类.要调用Thread类的Constructor中指定Runnable接口参数的constructor,来产生Thre

39、ad对象。接下来,要用产生的Thread接口来调用Thread run() 方法来启用线程。线程类由于会在Thread#start()方法被调用出来后调用Runnablerun( )方法,因此编写在run()方法中的处理将会被自动运行.线程的终止一般可通过两种方法实现;自然撤消或是被停止。自然撤消是指从线程的run()方法正常退出。通 常,当一个应用程序停止运行,例如用户从一个主页切换到另一个主页时,它就会调用stop()方法来终止原主页中正在运行的所有线程10 范丹J2ME在I-mode手机上的应用现代计算机,2003年第7期.3.4 手机硬件平台特点手机作为一种资源有限的设备,和PC机相比

40、,有以下一些特点:(1)处理器运算速度慢,远低于PC机的CPU运行速度。(2)存储器容量小、存取速度慢。(3)网络能力有限、带宽窄,并且因为手机的移动,容易导致手机网络地址的变化.(4)输入/输出的多样性:手机不可能有PC机标准键盘那么多按键,也没有鼠标。它的显示能力也非常有限,譬如显示尺寸小、分辨率低等。(5)手机由电池提供能源,会因为电池耗尽或接触不良造成经常断电。在编写手机应用程序时,必须对以上几个方面分别进行考虑14 赵海廷java语言程序设计2005-8-8。3.5 手机游戏开发工具软件J2ME Wireless Toolkit(J2MEWTK)是Sun公司所发布的官方版MIDP应用

41、程序开发工具,它为编写和测试M工DP应用程序提供了一个完整的开发环境。J2ME Wireless Toolkit(http:/java.sun。com/products/midp/)是制作手机用JAVA所必需的开发配套元件。安装 J2MEWTK之前,一定要先安装Java2 SDK 1.3以上的版本。如果没有安装Java 2 SDK的话,J2MEWTK即使安装完成,也无法进行M工Dlet的开发工作。J2MEWTK提供菜单或按钮方式的命令。J2MEWTK中有相应的编译(集成了预验步骤)、打包、模拟运行的菜单(或按钮),以及其它辅助工具。J2SE SDK(http:/java。sun。com/j2s

42、e/)是制作所有JAVA所必需的开发配套元件。这里介绍一下Java2 SDK及J2ME Wireless Toolkit的安装11 佚名JAVA教程.我们来安装制作JAVA所必需的开发配套元件J2SE SDK.先打开http:/java。sun。com/j2se/1.4.2/download.html。点击网页中的Download J2SE SDK链接,会出现了一个许可协议.仔细阅读完协议后,选中Accept然后再点击Continue。这是选择安装程序的画面。因为你的PC的OS是WINDOWS,所以你可以试着点击Windows Installation, Multilanguage,来下载安装

43、程序.启动安装程序后,会出现一个许可协议的画面。看完后选同意,然后点击Next。接下来,选择要安装的程序和安装到的地址。这里安装的程序就用默认的程序,安装地址也用默认的c:j2sdk1.4。2_05.设定数据库文件夹,这里我们也用默认的设置。点击Next,便开始安装了.用安装软件安装完毕后,就要开始设定JAVA使用的环境。用鼠标右键点击桌面上“我的电脑”图标,在显示选单中选择“属性”。打开“系统属性”,选择上面选单的“高级”,点击“环境变量按钮,出现环境变量设定窗口。在“用户变量”和“系统变量”的表里如果没有“Path”变量,就点击“新建”。在“变量名”一栏输入“Path”,“变量值”栏里输入

44、刚才安装的 J2SE SDK的文件夹里“bin”文件夹的路径。这里设定为c:j2sdk1.4.2_05bin。输完后点击“确定”键。下面就让我们来安装手机Java开发元件J2ME Wireless Toolkit。打开http:/java。sun。com/products/j2mewtoolkit/download。html,点击网页下部的Download按键。看完后选择Accept,然后点击Continue.于是显示安装程序选择画面,点击Windows Platform的安装程序,并下载.出现Wireless Toolkit的安装画面.选择Next。下面是许可协议的画面,看完后选择Yes。设

45、定正在安装的J2SDK的路径。这里点击刚才安装J2SE SDK的Browse.。键,设定c:j2sdk1.4。2_05,设定完后,点击Next.接下来设定安装WirelessToolkit的文件夹.这里使用预设的c:WTK104,点击Next。在程序文件夹进行注册,这里使用预设的J2ME Wireless Toolkit1.0.4_01,然后点击Next。然后是设定的确认画面。若确认正确,点击Next。安装完毕后点击Finish键,结束安装.下面说明一下J2ME手机游戏开发环境:Java手机游戏的真实运行环境是Java手机。一般来说,Java游戏的开发是先在PC机上模拟,模拟成功后再打包下载到

46、手机上。本文的模拟环境是:(1)系统环境Windows 2000(2)平台支持J2SDK-1。4(3)开发工具:采用MOTOJ2ME-SDK-5。2.1模拟器。第四章 手机游戏一“逃亡者”的设计与实现4.1游戏描述“逃亡者是一款选取了一款PC 小游戏作为范例移植到手机上,它的中文名为是男人就撑过30 秒,虽然看似简单,但绝对有挑战性!这是总结了无数日本纵版飞行射击游戏中的武器而研究出的特殊训练软件,专门用来训练“战斗机”飞行员。在漆黑一片的宇宙中,停着一架小飞船,突然四面八方出现很多黄色的小点向小飞船聚集过来,小飞船凭借速度优势和飞行技术从黄点之间的夹缝中飞过,之后又落入新的包围圈中,直至被黄点击毁。坚持的时间越长,就说明水平越高。持续不同的时间会得到不同的评价.如图4-1 所示是它原来的游戏画面。图4-1 特训:是男人就撑过30 秒游戏画面4.2可行性研究1。技术可行性:手机 游

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服