J2ME MIDP手机游戏开发第1章 J2ME技术概览

合集下载

跟我学J2ME手机应用开发——J2ME概述和系统结构

跟我学J2ME手机应用开发——J2ME概述和系统结构

1.1跟我学J2ME手机应用开发——J2ME概述和系统结构1.1.1与J2ME有关的术语1、3G移动相关技术目前应用在手机上的操作系统主要有Symbian 、Windows CE 、MacOSX、PalmOS和Linux 几种。

Symbian OS(中文译音“塞班系统”)由诺基亚、索尼爱立信、摩托罗拉、西门子、等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发手机操作系统。

它是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,可以支持GPRS、蓝牙、SyncML、以及3G技术。

微软Windows CE 被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统。

iPhone内置MacOSX系统,将创新的移动电话、可触摸宽屏iPod以及具有桌面级电子邮件、网页浏览、搜索和地图功能的突破性因特网通信设备这三种产品完美地融为一体。

Palm OS操作系统由Palm公司自行开发的,并授权给Handspring、索尼和高通等设备厂家,这种操作系统更倾向于PDA的操作系统。

ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

适用于嵌入控制、消费/教育类多媒体、DSP和移动式应用等。

随着J2ME的应用,它为移动互联引入了一种新的应用模式,即手机从移动互联网上下载各种应用程序,并在手机中离线运行这些程序。

由于定义了可执行程序下载的标准,并在手机上创立了可执行环境,就形成一种新型的应用模式。

这实际正是Java语言设计最初的目标领域,但是后来在PC和服务器上得到了发展。

2、JCP与JSR(1)JCP的主要职责在于维护Java技术的发展JCP(Java Community Process) 是一个开放的国际组织,主要由Java开发者以及被授权者组成,职能是发展和更新Java技术规范、参考实现(RI)、技术兼容包(TCK)。

J2ME技术在手机游戏的发展分析毕业论文

J2ME技术在手机游戏的发展分析毕业论文

J2ME技术在手机游戏的发展分析毕业论文目录摘要....................... 错误!未定义书签。

Abstract ..................... 错误!未定义书签。

第1章绪论 (1)第2章 J2ME技术概览 (2)2.1 J2ME的概念 (2)2.2 J2ME简介 (2)2.2.1 J2ME架构 (3)2.2.2 JVM ( 虚拟机 ) (3)2.2.3 MIDP(移动信息设备简表) (4)2.3 手机游戏的发展 (5)2.3.1 目前国内的发展情况 (5)2.3.2 目前国际的发展情况 (6)第3章游戏设计的需求分析 (9)3.1 MIDP中的游戏API (9)3.2 游戏类构成 (9)3.2.1 Boxer类的实现 (10)3.2.2 GameCanvas类的功能及特点 (10)3.2.3 Sprite类的功能及特点 (11)3.3游戏角色的处理 (11)3.4 游戏中的事件处理 (12)3.4.1 key Pressed方法 (12)3.4.2 key Released方法 (13)第4章“Pocket Boxing”手机游戏开发制作 .. 144.1 游戏编程 (14)4.2 格斗类手机游戏实例 (14)4.2.1 “Pocket Boxing”游戏背景介绍及开发环境 (14)4.2.2 MIDlet的构成 (15)4.2.3 MIDlet的生命周期 (16)4.2.4 MIDlet的画面显示基础 (16)4.2.5 游戏项目的创建 (18)4.2.6 命令种类及命令处理 (19)4.2.7 游戏中的描绘处理 (21)4.2.8 游戏状态的类变量 (23)4.2.9 按键事件的处理 (24)4.2.10 设计存在的难点 (25)第5章手机游戏开发过程中的困难 (26)5.1 手机游戏开发存在的困难 (26)5.1.1 移动开发存在的问题 (27)5.1.2 操作环境不兼容性问题 (27)5.1.3 显示速度方面的问题 (28)5.1.4 不同的屏幕尺寸问题 (28)5.1.5 输入问题 (28)5.2 解决方案 (29)第6章 J2ME手机游戏前景展望 (31)6.1 J2ME手机游戏的优势 (31)6.2 J2ME手机游戏的开发意义 (32)第7章结论 (35)致谢 (36)参考文献 (37)英文资料翻译 (38)第1章绪论手机是人们日常生活中所用的非常频繁的通信工具,虽然现在其费用比有线电话高,但是其随时随地的沟通优势,使人们摆脱了线路的束缚。

J2ME移动应用开发——MIDP高级界面编程

J2ME移动应用开发——MIDP高级界面编程
display.setCurrent(frmPhone);



}//2、重写方法

在此之前先要声明并实例化”电话本”窗体对象: private Form frmPhone; frmPhone = new Form(“电话本”);

frmMain.setCommandListener(this);//3、在 startApp中将监听器注册到UI组件
2、在构造方法中,实例化按钮对象

3、在startApp中,将按钮对象添加到主界面

第7页共10页
第2-2步 添加按钮响应

public class MainFrame extends MIDlet implements CommandListener//1、实现接口 public void commandAction(Command arg0, Displayable arg1) { if(arg0==cmdPhone)

frmPhone.append(tfName);
第9页共10页
第4步 向“电话本”界面添加“添加”按 钮cmdAdd并处理“添加”按钮响应




第4-1步:向“电话本”界面添加“添加”按钮(同 第2-1步) 1、在类体中,声明按钮对象 private Command cmdAdd; 2、在构造方法中,实例化按钮对象 cmdAdd = new Command(“电话 本”,Command.SCREEN,1); 3、在startApp中,将按钮对象添加到主界面 frmPhone.addCommand(cmdAdd); 第4-2步:处理“添加”按钮响应代码(同 第2-2步) 1、在commandAction方法中,添加如下代码 else if(arg0==cmdAdd) System.out.println("姓名:"+tfName.getString()); 2、给frmPhone窗体注册按钮监听器 frmPhone. setCommandListener(this);

1.J2ME概述

1.J2ME概述
第一部分 J2ME概述和开发环境
1、移动开发技术简介 背景:智能消费类电子产品:例如移动电话,PDA,电视机顶 盒的迅速发展;手机的普及,手机程序(手机游戏和应用软件) 发展最快 现状:在IT行业,有24.34%左右的人涉足嵌入式/移动设备 应用开发,Java ME 是嵌入式/移动设备应用平台的王者,linux 第二,WinCE第三 手机和电脑的主要区别:内存小,处理器速度慢。 2、Java ME 程序员岗位能力要求和知识体系
设定工作目录:
在WTK2.5.2\wtklib\Windows\ktools.properties最后添加:
kvem.apps.dir=D:\\Work\\WTK2.5.2\\apps 复制后改为kvem.apps.dir=C:\\WTK2.5.2\\apps
混淆器:proguard.jar(混淆、压缩资源和代码) 把proguard.jar复制到C:\WTK2.5.2\bin下 也可以通俗地理解为加密 集成开发环境:Eclipse3.2+EclipseMe1.7.5
21
MIDlet生命周期
22
MIDlet生命周期-基本框架
import javax.microedition.midlet.*; public class MyMIDlet extends MIDlet{ public MyMIDlet(){//非必须 //默认构造器(最先被调用) } public void startApp(){//必须 //进入活动状态 } public void pauseApp(){//必须 //进入暂停状态 } public void destroyApp(Boolean unconditional){//必须 //进入销毁状态-如果unconditional为true,那么终止请求是强制执行的。 notifyDestroyed();//通知MIDlet已经释放所有资源,请马上执行关闭程序。 }

基于J2ME的手机软件开发(一)

基于J2ME的手机软件开发(一)

关键词
一、引言
随着支持 a 的手机迅速普及 ,手机软件的需求量 日 J a v 益 暴涨。据最新职位调查 ,手机软件开发人员已成为急缺人才。 JM 2 E由于开发速度快 、周期短 、支持手机多及开发资源丰富 等优点成为当今最受欢迎的手机软件开发平台。然而很多人对 手机软件开发不甚了解 , 甚至觉得神秘莫测 ,无从下手。为此
法gD py) 该方法把MD t e il (, tsa Il 对象作为唯一参数。 e 例: 在 手机上显示 “ LV Y U ”。 I E ! O O
i ot x mio d i . i , mp rj a . re i nI u a v c t c .‘ o d i ot x mio d i . l . mp rj a . r i nmie * a v cet o dt ; p bic s My u l l s M旧l etn s De{ c a e xe d MIl t t pi e p y i l ; t Dsl m d p y ra i a y s a v
度优化的 Jv 运行环境 ,包括手机 、P A aa D 、智能化电器 、数 字机顶盒和汽车导航系统等
三 、C D LC
CD L C提供了一个适合 于 小型的,资源受限的,连接受限 的设备上使用的标准 Jv 平台.这些设 备通常是 1 aa 6位或 3 2 位的微处理器 ,10 B到 52 B的总内存空间,使i 电池供 6K 1K l l
Si u = hp / w . p . . tn r r g i t : w cm r cm c; t / w o go n
C n n onco netn 。 Cn n onco) net . n ot t eC i =(ot t net n onc roe eC i C o p

J2ME手机游戏程序教程

J2ME手机游戏程序教程

第1章J2ME 技术概述1.1 什么是J2ME1.2 J2ME平台体系结构1.3 MIDlet应用程序的生命周期第1 章J2ME 技术概述随着移动通信的突飞猛进,移动开发这个新鲜的字眼慢慢成为开发者关注的热点。

在CSDN的最近一份调查显示,有24.34%的受访者涉足嵌入式/移动设备应用开发,这个数字可能略高于实际的比例,但也足可说明嵌入式/移动设备应用开发是一块诱人的新鲜奶酪。

J2ME(Java 2Micro Edition)是嵌入式/移动应用平台的王者,Linux 和WinCE 分列二、三位。

Nokia 等厂商力推的Symbian 平台目前开发者占有率尚未达到满意水平,考虑到调查项合并了嵌入式设备(例如PDA)和移动设备(例如智能手机),Symbian、WinCE 系列在移动平台上会是竞争的主要两方。

如果厂商能在标准实现上做得更加规范,则J2ME 的跨平台特性会发挥得更加淋漓尽致,继续保有王者地位。

本章将从J2ME 的体系结构和MIDlet 应用程序模型。

1.1 什么是J2ME学习J2ME 以前知道什么是J2ME 是非常重要的。

J2ME 是SUN 公司针对嵌入式、消费类电子产品推出的开发平台,与J2SE 和J2EE 共同组成Java 技术的三个重要的分支。

J2ME 实际上是一系列规范的集合,由JCP 组织制定相关的Java Specification Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK 测试,这样确保兼容性。

比如MIDP2.0 规范就是在JSR118 中制定的。

可能接触过J2ME 的开发者会觉得说J2ME 是一系列的规范不准确吧。

因为我们在开发中用到了很多例如CLDC(Connected Limited Devices Configuration)和MIDP(Mobile Information Devices Profile)等内容。

J2ME手机游戏开发技术与实践课程设计 (2)

J2ME手机游戏开发技术与实践课程设计 (2)

J2ME手机游戏开发技术与实践课程设计一、课程设计目标本课程设计旨在培养学生对J2ME(Java 2 Mobile Edition)手机游戏开发技术的理解与实践能力,帮助学生了解J2ME游戏开发的基本理论和技术要点,掌握J2ME游戏开发所需的工具和平台环境,并能独立完成一个小型的J2ME手机游戏开发项目。

二、课程设计内容1. J2ME介绍本课程将首先介绍J2ME的基本概念和特点,分析其在手机游戏开发中的优势和不足。

2. J2ME游戏开发工具本课程将介绍J2ME游戏开发所需的工具和平台环境,包括Eclipse集成开发环境、J2ME Wireless Tool Kit、Java SDK、Java ME Platform SDK等,让学生熟练掌握J2ME游戏开发所需的开发工具和平台环境。

3. J2ME游戏开发基础本课程将讲解J2ME游戏开发的基础知识,包括如何创建一个J2ME游戏工程、如何实现游戏的图像显示、声音播放、触屏控制等功能的实现。

4. J2ME游戏实例分析本课程将分析一些经典的J2ME游戏实例,帮助学生理解J2ME游戏开发的实现方法和技巧,同时学生将根据这些实例进行一些小型游戏的开发。

5. J2ME游戏上线和营销课程最后将介绍移动设备游戏的上线和营销策略,包括如何通过各种渠道发布和推广自己的J2ME游戏,为学生未来从事移动游戏开发,为自己的游戏营销提供参考和指导。

三、课程设计任务完成一个小型的J2ME手机游戏开发项目,完成以下步骤:1.案例选取:根据个人兴趣选定一款适合J2ME平台的游戏作为本次课程设计的开发对象。

2.游戏设计:使用MindManager或其他思维导图工具,完成游戏设计文档(GDD),包括游戏说明、界面设计、关卡设计、声音和特效设计、游戏规则等内容。

3.开始开发:在Eclipse中创建一个新的J2ME工程,按照游戏设计文档中的设计实现游戏主体框架,并逐步实现游戏的各种功能。

4.测试调试:完成游戏基本功能开发后,需要进行测试和调试,确保游戏运行正常,没有不良后果和内存泄露等问题。

第1章-J2ME简介

第1章-J2ME简介

(1)MIDP API ) (2)OEM Specific API 2)
用Java编写程序的最大优点是可以一 编写程序的最大优点是可以一 次编写,随处运行。 次编写,随处运行。
1.2 J2ME应用介绍 J2ME应用介绍 1.2.1 J2ME手机游戏 J2ME手机游戏
如同Internet的普及导致网络游戏的高 的普及导致网络游戏的高 如同 速发展一样, 速发展一样,手机的普及导致手机游戏市 场呈现爆炸式的发展, 场呈现爆炸式的发展,随着手机性能的增 强,在未来几年里对手机游戏开发的需求 将大幅上涨。 将大幅上涨。
1.1.2
J2ME与Java体系结构 ME与Java体系结构
J2EE、J2SE和 图1-1 J2EE、J2SE和J2ME 的应用领域
1.1.3
JVM、CVM和KVM介绍 JVM、CVM和KVM介绍
Java 程序是以边解释边执行的方式运 行的,所有的Java 程序都会被编译成为二 行的,所有的 进制代码并运行在Java虚拟机上(J2EE、 虚拟机上( 进制代码并运行在 虚拟机上 、 J2SE 中的 中的Java 虚拟机简称为 JVM)。 )。
也就是说, 也就是说,J2ME 先把所有的嵌入式 装置利用Configuration 的概念区隔成两种 装置利用 抽象的型态。 抽象的型态。
1.1.5
MIDP介绍 MIDP介绍
J2ME 使用配置(CDC或CLDC)和 使用配置( 或 ) 简表( 简表(Profile)定制运行时环境(Java )定制运行时环境( Runtime Environment,Java,JRE)。 , , )。
其实这并不矛盾, 其实这并不矛盾,因为这些就是在相 关规范中制定的。 关规范中制定的。
1.1.1

J2ME游戏开发第一章PPT课件

J2ME游戏开发第一章PPT课件

▪ private Command exitCommand; private TextBox tb;
▪ public HelloWorld() { exitCommand = new Command("退出",Command.EXIT,1);

tb = new TextBox("你好!,J2ME","你好!,J2ME",15,0);
▪ // TODO Auto-generated method stub
Display.getDisplay(this).setCurrent(tb); }
▪ protected void pauseApp() { // TODO Auto-generated method stub }
不同点:面向不同设备的具体配置不同
10
CDC CLDC
虚拟机、配置和简表关系图
选择性的类 程序包
J2ME基本类 程序包
Java虚拟机
基本配置 MID配
文件
置文件
CDC CLDC
CVM
KVM
11
KVM & CLDC
▪ CLDC(Connected, Limited Device Configuration面向连接受限的设备配置) , J2ME的基本类程序包,所用的Java虚拟机为 KVM(K虚拟机)。

tb.addCommand(exitCommand);
▪ stub }
tb.setCommandListener(this);// TODO Auto-generated constructor
▪ protected void startApp() throws MIDletStateChangeException {

JAVA2014 J2ME手机游戏的开发-Beckham Goal

JAVA2014 J2ME手机游戏的开发-Beckham Goal

J2ME手机游戏的开发-Beckham Goal摘要J2ME(Java 2 Micro Edition)是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。

它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。

随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。

本论文着眼于J2ME 技术的应用,开发一款简单的手机游戏程序--Beckham Goal。

论文在分析了实现小游戏的相关基础技术及理论后,对该游戏进行了功能需求分析、模块划分及总体设计,解决了游戏中涉及的碰撞检查以及其他若干关键技术,最后在J2ME 平台下实现了该小游戏,并通过验证达到预期的效果。

关键词:J2ME;手机游戏;K-Java;碰撞检查目录论文总页数:25页1引言.................................................... 错误!未定义书签。

1.1手机游戏概述........................................ 错误!未定义书签。

1.2J AVA手机游戏的发展现状.............................. 错误!未定义书签。

1.3手机游戏的发展前景.................................. 错误!未定义书签。

2J2ME的概述与相关理论基础............................... 错误!未定义书签。

2.1J2ME的简介......................................... 错误!未定义书签。

2.2J2ME的构架......................................... 错误!未定义书签。

手机游戏开发趋势和J2ME API相关概览

手机游戏开发趋势和J2ME API相关概览

手机游戏开发趋势和J2ME API相关概览注:本文原作者是德州大学奥斯汀分校的博士研究生Michael Yuan,他在本文中畅谈J2ME和手机应用程序。

目前,他领导构建一系列针对Nokia开发者平台的计划项目。

-----------------------------------------------------------------------纵观整个IT产业的发展史,电脑游戏已经成为技术创新背后的一股强大的驱动力。

电脑游戏玩家渴望更强的硬件运算能力;迫切于拓展各种软件的界限——从引人注目的图形到人工智能(AI),再到网络安全。

游戏开发者和玩家往往是采纳前沿计算机技术的先锋。

因为其创新本质,游戏才不致于沦为被几个大型外包企业所掌控的科技产品。

有才能的独立创意人在这片领域总有大片生存发展空间。

随着技术不断提升游戏体验,游戏市场还会继续成长壮大。

IT行业革命节省了我们的时间和资金,从而延长了我们的工作时限;同时,我们把更多的时间和资金花在游戏上,从而提升了生命的总体质量。

即使是在当前的经济困难大背景之下,游戏行业依然保持迅猛的增长势头,仍然是赢利的产业部分。

Java开发者不应忽视其巨大的机遇所在。

而在IT行业的其他部分,游戏业的新贵应属手机游戏。

手机游戏已经将许多原本不可能的行业参与者汇聚在一起,这些参与者包括:传统企业(如美国的太阳微系统公司的新游戏部门)、设备制造商(如诺基亚的游戏手机和美国高通公司的无线二进制运行环境设备)和网络经营商(如英国的沃达丰公司的信息服务)。

因为Java2平台,Micro Edition (J2ME)正兴起成为最受广泛支持的手机游戏平台之一,作为Java开发者,我们也应该积极适应这个有利可图的新产业部门。

在本文,我将从Java开发者的角度解读手机游戏面临的机遇与挑战;同时,我还根据几项重要的J2ME技术规范对艺术手机的Java技术做出几点概述。

手机游戏特征手机游戏的商业号召力来自其广泛的影响力。

第1章 走进J2ME移动开发世界

第1章  走进J2ME移动开发世界

Windows Mobile 大量的开发人员、熟悉的开发工具及技 术支持,自身拥有强大的技术能力和 强悍的营销能力。 Symbian 具有市场配置和销售的绝对优势,同时 与无线软件开发公司密切合作,针对 其平台开发出一系列的工具。 内存要求低,软件版本更新较快,微内 核结构简单,为构造可嵌入系统提供 了可高度模块化的构件方法。 操作简单,对硬件要求低,应用软件反 应迅速,新推出的Palm OS支持无线 接入功能,支持各种无线通信技术, 融入了更多的BeOS特性。
1.4.3厂商可选包(Optional Packages)

所谓的厂商可选包,指的是由厂商提供给 程序开发人员的一组和其它规范(或API) 没有任何依存性的类库,开发人员可以利 用这一类库开发出具有特定功能的应用程 序。
1.5 JTWI


即使使用标准的API,程序也不一定就能够移植, 因为J2ME规范并没有对应用程序的大小和执行环 境等细节进行详细规范,如各个厂商对应用程序 的大小限制不一样,有的是30K,有的是50K。对 线程支持的程度也不一样,有的可以支持3个,有 的是5个。 因此仅仅依靠J2ME还不能够确保应用程序的可移 植性,JSR185中提出的JTWI(Java Technology for Wireless Industry,无线工业Java标准)是一个综合性 的规范,其目的主要是为了确保J2ME软件的可移 植性。它主要包括2个部分:
四种Java平台

注意:不同的Java版本支持的同一名称的 类和方法在内部实现上很可能是不同的, 因为Sun针对不同的运行环境(如执行速度、 内存容量等)进行了优化,但幸运的是这 一点对开发人员并没有任何影响。
1.4 J2ME技术框架

J2ME定义了一种灵活的层次规范结构,来 规范众多的移动设备。不同层次的规范相 互协作来提供一个完整的移动Java平台。 J2ME定义的移动Java平台分为4层:

J2ME手机应用开发技术-1

J2ME手机应用开发技术-1
中国最大、最专业的3G移动互联网人才培养基地
MIDP应用程序的生命周期
三个状态
运行状态(Active) 暂停状态(Pause) 销毁状态(Destroyed)
状态的含义
运行状态:程序正在运行 暂停状态:资源暂时被释放,随时可运行 销毁状态:释放资源,关闭程序
中国最大、最专业的3G移动互联网人才培养基地
中国最大、最专业的3G移动互联网人才培养基地
手机游戏开发流程
开发
美工的工作 音乐的工作 程序员的工作,开发规范 ,自测规范,作品演示
开发手机游戏的三种方式
换图 改版 原创 标题党
中国最大、最专业的3G移动互联网人才培养基地
手机游戏开发流程
测试
开发出一个机型就开始测试 测试规范 测试流程
ቤተ መጻሕፍቲ ባይዱ
中国最大、最专业的3G移动互联网人才培养基地
由于Java语言自身的特点,和系统的关联不大,所以开 发速度很快。程序的开发周期比较短。
技术入门快
由于JAVA语言相当的普及,而对于有一定JAVA语言基 础的人来说,学习J2ME技术的门槛很低,所以J2ME技 术的普及速度很快。
扩展性强:可适应Android、BlackBerry(黑莓)开发
中国最大、最专业的3G移动互联网人才培养基地
配置文件
作用
为了能够让手机的操作系统能够辨别出具体的 每个程序 在配置文件中说明运行这些程序所需要的硬件 条件和软件平台
JAD文件和MANIFEST文件。 JAD文件则说明了具体的运行配置。 MANIFEST文件用来描述MIDlet Suite的配 置

中国最大、最专业的3G移动互联网人才培养基地
手机游戏开发流程
策划 内部评审 开发 测试 移植 销售 上线,组织活动

J2ME手机游戏开发入门

J2ME手机游戏开发入门
22 this.flushGraphics();
动画的原理
• 系列动作的图片连续绘出
23
精灵动画
左行
0
1
2
后行
3
4
5
前行
6
7
8
右行
9
10
11
24
让精灵动起来
Sprite的方法 的方法
• • • setFrame(int index) – 显示哪一帧,设置动画开始的画面 nextFrame() – 显示下一帧 Move(int dx,int dy) – 在x和y方向上移动
16
先写一个Midlet 先写一个Midlet
• 在手机上运行的 在手机上运行的Java程序叫:MIDlet 程序叫: 程序叫 • 创建一个MIDlet的步骤: 的步骤: 创建一个 的步骤
1 2
打开Eclipse 打开 新建J2ME Midlet 新建 Suite
3
新建J2ME 新建J2ME Midlet
J2ME手机游戏开发入门 手机游戏开发入门
Version 3.0
主要内容
• • • • • • • • 手机平台的特点 J2ME的优势和劣势 的优势和劣势 J2ME程序的运行环境 程序的运行环境 J2ME程序的开发环境 程序的开发环境 游戏的种类 游戏程序的基本功能 J2ME游戏开发关键的包和类 游戏开发关键的包和类 J2ME游戏开发实战 游戏开发实战
注意: 注意: 需要降 低循环 的速度
向右移动
if((this.getKeyStates() & GameCanvas.RIGHT_PRESSED)!=0) { if(!this.moveRight) { this.moveLeft = false; this.moveRight = true; this.moveUp = false; this.moveDown = false; this.role.setFrame(9); } this.role.nextFrame(); if(this.role.getFrame()==0) { this.role.setFrame(9); } this.role.move(5, 0); } 27

J2ME手机游戏开发技术详解

J2ME手机游戏开发技术详解

第1章J2ME概述本章主要介绍J2ME的相关背景知识。

读者需要掌握以下知识点:❑J2ME的3层体系结构。

❑CLDC类库和通用连接框架。

❑MIDP 2.0的新特性。

❑CLDC/MIDP总体体系结构。

❑CLDC/MIDP的安全机制。

1.1 J2ME体系结构为了适应移动数据的发展,推进无线电子商务等业务的发展,J2ME(Java 2 Micro Edition)即用于嵌入式系统的Java被引入无线领域。

J2ME的出现实际上是Java技术的回归。

作为Java 2平台的一部分,J2ME与J2SE、J2EE一起,为无线应用的客户端和服务器端建立了完整的开发、部署环境。

随着J2ME的应用,它为移动互联引入了一种新的模型,即允许手机可以从互联网上下载各种应用程序,并在手机创造可执行环境离线运行这些程序。

由于定义了可执行程序下载的标准,并在手机上创立了可执行环境和程序开发语言,由此,在移动通信业第一次为软件开发商创造了巨大的商业机会,手机用户在得到丰富应用体验的同时,也大大提高了运营商的网络流量。

1.1.1 Java的版本Java在10多年的发展历程中,已经成长为一个全面而成熟的面向对象应用程序开发平台,它适用于广泛的、异构的编程环境,这些应用的涉及面非常广,从企业级的服务器应用到传统的桌面应用以及各式各样面向小型设备的嵌入式应用。

Java 2平台包括3个版本,每个版本都针对不同的用户群,如图1-1所示。

这3个版本具体为:❑Java 2平台企业版(J2EE):用于满足企业向它们的客户、供应商、雇员提供服务的需求,提供了大型的、可升级的、可靠的商业服务器解决方案。

❑Java 2平台标准版(J2SE):用于传统且成熟的桌面系统。

❑Java 2平台微型版(J2ME):主要面向消费电子产品和嵌入式设备。

说明:Java SDK 1.2及以后的版本都统一改名为Java 2,因此这些名字中都有2。

图1-1 Java的版本结构Java 2各个版本所面向市场的每一个版本都有其自己的虚拟机,这些虚拟机都为其目标应用做了特别优化。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

要点提示 ——打包中的常见问题
如果包的大小有异常,很可能把Thumbs.db文件打进来了,此 文件是系统自动生成的,并且是隐藏的,搜索目录,删除它即可。 在使用混淆器的过程中,如果发生应用程序异常,可以尝试不 使用或者更换混淆器。 JAR文件下载到设备后,如果出现无效文件格式的问题,可 能是由于手机设备不支持MIDP的版本。WTK2.5默认的MIDP版 本是2.1,WTK2.1默认的MIDP版本是2.0。重新打包修改MIDP版 本,再下载即可
1.3.3 知识拓展:应用程序描述文件ห้องสมุดไป่ตู้清 单文件
清单文件用于提供关于 JAR文件内容的信息,它被打包存储在 应用程序描述文件即 JAD (Java Application Descriptior)文件。 JAR文件中,文件名为 MANIFEST.MF 。清单文件中的数据格 它由许多描述 MIDlet套件的属性组成,位于 JAR 文件之外。 式采用“属性名:值”对规范。 MIDP2.0 规定清单文件中必 须包括的属性有: JAD文件中必须包含的属性有: MIDlet-Name:MIDlet套件的名字 注意:前三个属性是和JAD 1、MIDlet-Name:应用程序名称 MIDlet-Version:应用程序版本号 :版本号 文件共享的,属性值必须一 2、MIDlet-Version 致,否则MIDlet无法运行。 :开发商 3、 MIDlet-Vendor:开发商名称 4、MIDlet-Jar-URL : JAR 文件的URL MIDlet-<n> :对套件中每一个 MIDlet 的说明。 MIDlet-<n> 表 5、示对第 MIDlet-Jar-Size :的说明,值分为 JAR 文件的大小 n个MIDlet 3部分,用逗号间隔。 6、MicroEdition-Configuration :CLDC 版本 Name:MIDlet名字 7、MicroEdition-Profile :MIDP 版本 Icon:PNG图象文件名, MIDlet的图标 8、MIDlet-Description :应用程序简介 Class:MIDlet 的类名 9、Media-Price :信息费 MIDlet-Profile:简表(MIDP 1.0或MIDP2.0) MIDlet-Configuration:配置(CLDC)
要点提示 2/2
从上面的运行结果可以看出,一个MIDlet在不同的模拟器 上运行时,结果不会有太大的区别,在真实的设备上也如此, 这体现了Java的跨平台性。但是,从图1-11的四个模拟器中, 可以直观地发现,不同的移动设备其屏幕的大小、键盘的布局 另外,需要注意的是,WTK2.1不支持中文路径。如果 (尤其是对按键的定义)有可能是不一样的。比如: WTK2.5.2 MIDlet所在的项目路径中带有中文字符,那么在运行时,模拟 中默认模拟器的屏幕大小为 240X291,而在WTK2.1 中默认模拟 器一闪就会消失,程序自动结束。 器的屏幕大小为180X177。还有,屏幕对颜色数量的支持也不尽 相同。这样,当MIDlet从一个设备移植到另一个设备的时候, 就要考虑对界面布局、图片大小、键盘响应等方面的修改。
第1章 熟悉J2ME技术在 JBuilder2005工作环境中的应用
手机应用开发技术
能力目标
• 熟练掌握在JBuilder2005中搭建手机游戏的开发环境;
• 能熟练选择不同的模拟器运行MIDlet;
• 能利用网络获取不同的模拟器和开发包; • 能熟练地将其他的模拟器嵌入到JBuilder2005工作环境中; • 能熟练地将手机游戏打包发布; • 在打包过程中,能使用不用的混淆器实现混淆; • 能利用多种方法和手段将游戏下载到手机设备;
认知目标
• 了解什么是J2ME; • 理解配置和简表; • 了解不同的模拟器和开发包; • 了解混淆的作用; • 了解清单文件和应用程序描述文件的构成和作用。
1.1 学习情景描述
Sun公司推出的 如今的手机已不仅仅提供通话功能,而是向集成 本章的主要任务就是在 J2ME为手机游戏的开发提供了一个良 JBuilder2005中搭建手机 电脑、网络聊天、数码相机、 好的技术支持和开发平台。 游戏的开发环境,新建工程、新建 J2ME MP3 中定义的 MIDlet 、游戏等智能化、 ,在不同的 MIDP简表 娱乐化方向发展。手机游戏作为手机应用的一个重要 是开发手机游戏的接口,一个手机游戏就是一个 模拟器中运行该 MIDlet。然后打包发布,将其下载到
分支,正在以不可估量的速度蓬勃发展,逐渐形成了 MIDP 手机上,并在手机上观察运行效果。 应用程序,MIDP应用程序又被称为MIDlet。
一个独特的、独立的行业。
1.2 开发第一个MIDlet
1.2.1 知识准备:了解J2ME
• Java的分类
– J2SE( Java2 Standard Edition):J2的标准版, 通常使用在PC上。 – J2EE( Java2 Enterprise Edition):企业版, 扩展了给企业使用的EJB(Enterprise Java Beans) 与Servlet等功能。 –J2ME(Java2 Micro Edition) :是以广泛的消费 性产品为目标的高度优化的Java运行环境,是Java 技术的一个分支,适用于移动电话、可视电话、数 字机顶盒和汽车导航系统等等。
J2ME体系结构1/2
• J2ME平台由Configuration(配置)和Profile(简表) • 基本的核心类库:ng、java.io和java.util包。 • 构成。 javax.microedition.io包:提供了基于CLDC通用连接框架的网络支持。
• javax.microedition.lcdui包::提供了用户界面API。 Profile Configuration CDC 而 MIDP 是针对一系列设备提供的开发包集合,为某个具体的设备 CLDC 提供了与 是以 对系统需求低,只需要 Sun、 用于一组通用设备的最小的 JDK1.1 Motorola 大致相同的函数库,对存储器和 、Nokia为中心的 160KB~512KB MIDPEG Java平台,它将基 的存储器, (Mobile GUI • javax.microedition.lcdui.game包:MIDP 2.0新增包,提供了手机游戏 Information Profile )所制订出来的使用在 CLDC上的 本环境定义为一组核心类( 部分的系统要求比较高,因此不能用在目前的移动电话上,只能 用电池就可以运行。为手机应用程序提供了一个良好的开发、运 家族或某个具体的工业产品应用程序提供更高的性能。 lang 、io、util)和一个运行在特定设 Profile基 开发的高级 API。 Expert Group 。MIDP 在CLDC 的功能之上又附加了适合目标设备的 GUI 与事件 • Profile javax.microedition.media 包: MIDP 2.0新增包,提供了音频、视频等 备上的特定 用于比较高端的设备,比如:下一代智能电话、双向对讲机、车 行环境。 于 Configuration CLDC JVM 的 ( 之上,是对 JVM Java 一般称为 Virtual Configuration Machine KVM 。 , Java 的补充和完善。没有 虚拟机 )。 多媒体功能。 处理功能,是用来开发手机游戏的接口 。 辆导航系统等。 Configuration 根据不同的设备,在 ,Profile CDC的 是不可能运转的。 JVM J2ME 一般称为 中定义了两个 CVM。 Configuration : • javax.microedition.media.control 包: 2.0新增包,为播放器提供 现在MIDP的最新版本为MIDP 2.0MIDP (2.1)。和 MIDP 1.0相比,最大 CDC 在 J2ME ( Conneced 中 , 已 经 Device 定 义 了两 Configuration 种 Profile : ,连接设备配置)和 KJava 和 MIDP ( Mobile 了特定的控制功能。 的不同在于新增了专门用于开发手机游戏的game包。除了一些型号比较 • Information javax.microedition.midlet 包:该包定义了 MIDP应用程序,以及应用程 CLDC (Connected Device Limited Profile ,移动信息设备简表)。它们被建立 Device Configuration ,受限连接设 老的手机只能支持MIDP 1.0以外,目前市场上的手机大多数都能支持 序和它所运行的环境之间的交互。 备配置)。 在 CLDC之上,适用于小型设备。 MIDP 1.0和MIDP 2.0。 • javax.microedition.pki 包:MIDP 2.0新增包,提供用于鉴别安全网络 信息的数字认证。 • javax.microedition.rms包:提供了持久存储的机制。
1.2.4 知识拓展: 模拟器和开发包
一般来说,不同厂商都对 模拟器是用来在PC机上模拟移动设备运行 J2ME作出了不同的扩展,都会推出 MIDP应用程序的一 个仿真设备。大多数手机厂商在推出Java手机的同时,都会提供 自己产品的开发包。因此,如果想充分地发挥特定设备的功能, 相应的模拟器。手机应用程序开发者往往先在模拟器上测试 最好使用特定厂商的开发包。一般情况下,开发包中会有一个 MIDP WTK ( 应用程序,开发完成后,再交给专业的手机测试人员。 Wireless ToolKit,无线开发工具包),其中包含了SDK和 模拟器。有的还会提供一个和WTK配合使用的开发工具。也有 需要注意的是,模拟器只能是尽可能地接近真实设备的用户界 的是直接提供一个独立的开发环境。不同厂商推出的开发包可以 面、功能和性能,它和真实设备之间还是存在一定差别的,比如 到相应手机厂商的官方网站去下载。比如: Nokia 的开发包到 在速度上、颜色上和性能上等等。 Nokia 的网站去下载, SonyEricsson 的开发包到 SonyEricsson 的网 在开发过程中,选择何种模拟器是很重要的。原则上来说,为 站去下载, Motorola的开发包到Motorola的网站去下载。 哪一种设备开发程序,就要使用哪一种设备的模拟器。
相关文档
最新文档