j2me手机游戏开发教程

2024-10-21 版权声明 我要投稿

j2me手机游戏开发教程(推荐10篇)

j2me手机游戏开发教程 篇1

[ 录入者:j2me | 时间:2006-04-18 14:03:04 | 作者: |来源: | 点击数:245 ]

[上一篇] [下一篇]

J2me程序由于其特殊的运行环境限制,所以优化就显得比较重要,以下是我在学习j2me编程所收集的一些技巧和自己的心得。

本文主要是说明j2me平台上的特殊优化方法,与j2se重复的一些技巧就不再赘述了。

1.显示图象时确定好你的fps,最好先做几次小实验,这样能让你在显示效果和运行速度上有比较好的平衡。

2.GamaCanvas.getGraphics()每次都会产生一个全新的对象,但是对这些对象的操作都是对同一个graphics,所以还是只取一次供后面使用。

3.让多个对象使用同样的监听器,比如让主MIDlet类实现CommandListener和ItemStateListener接口。

4.考虑使用手机开发商提供的一些sdk,没人会比他们更了解他们手机,所以有些时候能显著提高速度,特别是图片,视频使用方面。

5.使用监视工具分析MIDlet的瓶颈,wtk和各个公司提供的开发包里都会有,可以找到程序的弱点。如果是在手机上,用timer测试你认为有可以的地方。

6.使用System.gc(),在无线程阻塞的情况下可以有效的缓解内存压力,但是有些公司不是太推荐使用(如nokia).sun的说法也是越低端的机子执行的越慢,总之,慎用吧。

7.用固定的数组代替使用Vector。

8.图片的优化。考虑使用设备的规格,可能高分辨率的图片不一定显示的出来。

9.不用的对象赋值为null,为更快的回收

更多精彩请关注

更多精彩请关注

更多精彩请关注

j2me手机游戏开发教程 篇2

当前,无线通信已经成为发展最快、最前沿的通信领域之一。手机等移动设备的拥有量早已超过PC机,目前无线市场面临的最大问题是缺乏关键性应用,手机游戏自然而然成了热点问题。目前手机游戏主要有嵌入式游戏、短消息服务游戏、浏览器游戏;在J2ME出现之前,如果希望在移动电话这样的设备上开发游戏程序,就必须使用专用的API和开发工具,并且开发出来的游戏程序无法在其他移动电话上运行。随着J2ME的出现,广大的开发人员可以使用一种通用的开发语言—Java来为移动电话开发,它能在任何厂商的移动电话上运行游戏。因此J2ME的出现必将导致手机游戏程序的普及。

1 J2ME的体系结构

1.1 Java技术

Sun公司的Java目前有三个平台,即J2EE( Java2 Enterprise Edition )、J2SE( Java2 Standard Edition )和J2ME。

作为平台,J2EE定位于服务器端,J2SE定位于客户端,J2ME则定位于嵌入式系统。它们都要基于Java虚拟机(JVM)才能运行。

1.2 J2ME的层次结构

J2ME采用模块化的结构,底层是宿主机的操作系统,内部则分为三层,Java Virtual Machine(虚拟机层);Configuration(配置层);Profile(简表层)。J2ME有两类虛拟机:CVM(C虚拟机)和KVM(K虚拟机),CVM功能比KVM功能更为强大;Configuration层:Configuration是J2ME对于嵌入式设备的规范,在这些规范中,定义了设备至少要符合的运算能力、供电能力和内存大小等规范,按照规范一般把嵌入式设备分为CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration)两大类。 Profile层:这一层对于用户和程序开发人员来说是最常见的。Profile中定义了与特定嵌入式设备紧密相关的扩充类库,这些扩充类库是建立在Configuration所定义的核心类库基础上的,它是架构在Configuration之上的规范。

针对移动电话内存小、速度慢和I/O差的特点,J2ME对JVM、Configuration和Profile三层做了特殊的实现。在JVM层,J2ME在手机上移植了KVM(Kilobyte Virtual Machine),只需要几百KB的内存就可以运行;在Configuration层,J2ME规定了CLDC(Connected Limited Device Configutation),它对设备的运算能力和内存大小都有具体的限制。CLDC不支持浮点运算;在Profile层,J2ME规定了MIDP(Mobile Information Device Profile)。MIDP 定义了在手机上运行的Java程序的规范,包括应用程序生命周期、各种UI界面组件、支持Record存储数据和HTTP连接等等,这些在CLDC的基础上的附加功能是通过扩充新的Java类库来实现的。J2ME通用结构与手机中的J2ME结构之间的对应关系如图1[1]所示。

1.3 MIDlet介绍

由图1可知,手机程序其实是完全基于MIDP开发的。使用J2ME的CLDC/MIDP编写的Java程序被称为MIDlet。MIDlet具有良好的兼容性和可移植性。

所有基于MIDP的程序的主类都必须是基于MIDlet的。MIDlet是一个Java类,主要实现startApp()、pauseApp()、destroyApp()方法,以实现MIDlet程序的状态转换功能。MIDlet在应用程序生命周期中有三种可能的状态,分别是:运行、暂停和退出。MIDlet在移动电话上运行的完整过程,就是一个MIDlet状态转换过程。MIDlet程序运行时,总是从实现java.microedition.midlet的MIDlet接口类的构造方法开始,构造方法执行完一次后就不再重复执行。然后通常是运行startApp()、pauseApp(),这两个方法可以重复多次执行。最后是运行destroyApp()方法,这个方法执行完时就意味整个MIDlet程序运行结束。

2 程序的设计思想、框架及具体实现

2.1 程序的设计思想

在开发Java游戏程序时,通常要考虑使用多线程[2]来实现:负责改变图形和刷新显示屏幕、处理用户的输入,处理游戏中各种角色动作的参数变化。作者开发的“小南河村的生活”处理的基本流程是:用户输入、改变游戏中各种角色动作的参数、改变图形、最后是刷新显示屏幕。用户输入和刷新显示屏幕的处理过程会自动放入事件处理线程中运行,改变各种角色动作的参数和改变图像的位置和形态的代码放入由用户创建的新线程中运行,并且它们在用户线程中周期性地执行。详细说明如图2所示。

2.2 游戏框架

游戏程序的框架实质上就是指游戏引擎,无论游戏的大小,都要有游戏引擎起控制作用。简单的来说,游戏引擎就是用于控制所有游戏功能的主程序,从计算碰撞、物理系统和物体的相对位置,到接受玩家的输入,以及按照正确的音量输出声音等。游戏框架打好后,就意味游戏引擎的完成,游戏引擎的完成就意味整个游戏基本成型。

游戏引擎的结构各不相同,不过基本上都是在一个游戏主循环内实现。程序里面的主循环包含了程序框架的最主要的结构体。J2ME的程序一般都包含两个类,一个是MIDlet,一个是Canvas。一般都是把游戏的主要代码放在Canvas这个类里面。这个类是基于事件驱动的程序,有三个主要相应函数 void paint(Graphics g),void keyPressed(int keyCode),void keyReleased(int keyCode)。众所周知,Java语言在语言的低层就支持多线程,在Java中可以使用两种方式来实现多线程操作,这两种方式依次是:(1)继承Thread类或实现Runnable接口; (2)就是java.util包中的Timer和TimerTask类。本游戏做法是让Canvas这个类实现Runnable这个接口,然后在其类中创建一个线程,启动其run()函数,而run函数里面就包含了游戏的主循环。

2.3 游戏关键技术处理说明

2.3.1 优化内存使用

J2EE和J2SE程序员在设计程序时,通常不需要关心内存的使用情况,因为有Java的垃圾自动回收机制。然而在J2ME环境中,必须合理使用内存,因为手机的内存只有几百K。所以在设计J2ME手机游戏程序时,必须谨慎考虑程序运行时所占用的空间资源。优化内存一个有效方法是在程序中主动地清理内存。一旦有资源不再使用就应该立即释放,这样能够提高程序的空间性能。如在程序中有对象不再使用了,就应该立即释放他们,具体做法是设置对象的引用为null,使对象能被垃圾收集器收集。如果程序想尽快进行内存垃圾收集工作。那么,就显式地调用System.gc()方法来进行垃圾收集。但JVM在进行垃圾收集时会暂停解释的工作。这就有可能会使游戏运行有暂时的停顿,所以,System.gc()方法的执行应该放在界面切换的地方,这样游戏就不会有不流畅的感觉了。

内存使用的大户无疑是图片,一张3K大小的图片通常占用20K左右的内存。游戏中会用到大量的图片,而加载图片会占用较大的内存空间和时间,这样就可能会使手机运行速度变慢。这种问题的部分解决办法是:在使用缓存区加载图片时,由小图拼凑成一张大图,创建一张和拼凑后的大图同大的缓存空间,将小图贴在缓存上,以后就可调用缓存图片,如此可以提高程序的运行速度。很大一部份的内存溢出都是发生在构造函数中。内存使用的高峰期都是在构造函数中,所以避开这个高峰能有效地防止溢出。通常的办法是第一次使用时初始化。如下所示:

if ( img==null )

{ //初始化

}

游戏很多时候都需要地图数组、声音数组,还有一些其它资源,最好是在程序需要时再加载进内存中。

2.3.2 图形双缓存

在游戏中,当角色在一定的场景中有动作时,如行走。就要用背景擦除角色,然后在另外一个位置重画角色,这样在某一瞬间,可能在角色的位置看到背景。由于这发生在瞬间,所以会出现闪烁。用双缓存技术可以消除动画闪烁[3]。

缓存区是绘图时使用的屏外内存区。使用双缓存不是直接绘制屏幕,而是绘制到后缓存区,然后将整个缓存区复制到屏幕上,后缓存区只是普通的图像环境。可以Canvas类中的createImage( int,int )方法生成后缓存区。本游戏中基本做法是:

第一步、创建图象在缓冲区的图形环境:

//创建后缓冲区

Image buf = Image.createImage( this.getWidth(),this.getHeight() );

//得到后缓冲区绘画环境

Graphics gbuf = buf.getGraphics();

第二步、将加载后的图片画在后缓冲区绘画环境gbuf中:

//加载图片

Image imgStartMenu = Image.createImage("/res/startMenu.png");

//将图片画在gbuf上

gbuf.drawImage(imgMenuBG,GameConfig.screenX >> 1,

GameConfig.screenY >> 1,

Graphics.HCENTER | Graphics.VCENTER);

第三步、将后缓冲区整个绘画环境gbuf复制到屏幕上

// paint(Graphics g)方法是Canvas类中在屏幕上绘制图像的方法

public void paint(Graphics g)

{ g.drawImage(buf,0,0,20);

}

2.3.3 在不支持透明图形的系统中绘制精灵

在标准的MIDP规范中仅支持PNG图形格式,即不支持透明图形格式GIF。

如果系统不支持透明图形,就会导致很难绘制精灵(精灵也就是游戏程序中可以四处移动的游戏主角)。因为两个运动的物体重叠时,其中一个精灵图形周围的白色图会覆盖另一个物体本应显示的部分图形,会导致图形失真。

在本文开发的“小南河村的生活”游戏程序中,是用Graphics类中的setClip( int x,int y,int width,int height )方法在不支持透明图形的系统中实现真实的精灵绘制。SetClip()方法是在屏幕上设置绘制图形的有效区域,只有在setClip()方法设置的区域内的屏幕才会被改变,而在setClip()设置以外的图形是不会被改变的[4]。使用setClip()方法可以在绘制精灵时,仅绘出有物体图形的部分,而白色图形部分不绘制。

2.3.4 设计重复按键功能简化用户输入

使用J2ME的移动电话时,并不是所有的电话都具有重复按键的功能。例如在本游戏中,如果在游戏玩家需要使用RIGHT键移动游戏中的人物向前行走时,并且系统不支持重复按键,则玩家要反复按很多次RIGHT键才能使游戏中人物不断地向前走动。这样的游戏,用户是不会喜欢的。

大多数的移动电话并不支持重复按键,但是可以通过MIDP的编程来模拟重复按键功能。本游戏程序中处理重复按键问题的基本思想是:

(1)建立一个重复执行的任务。(2)当键被按下时,在这任务中执行按键的功能。(3)以一定的频率反复执行这一任务。(4)当按键释放时,在该任务中放弃执行按键的功能。

在本游戏中具体步骤是:当玩家按下键时,keyPressed()方法设置该键键值,并赋到字段keyState中,当玩家释放该键时,keyReleased()方法清除字段keyState中的键值。在不断循环的用户线程中,调用currentKeyState()方法,该方法检查当前系统是否有某个按键键值,有则返回true,之后执行该条件表达式下的语句段,即人物行走的参数的处理代码;如果当前系统没有该按键键值,则返回false,跳过人物行走的参数的处理代码段,继续执行下面的其他代码。

2.3.5 考虑打进的电话和短信

移动电话的主要作用是方便随时随地进行通信。当手机上一个游戏程序的运行被打进的电话、短信或手机其他操作打断时,游戏程序应该适当地“暂停”或“继续”,以实现J2ME程序与手机平滑交互。

在J2ME中通常有两种机制来暂停或继续一个程序,它们是:“pauseApp/startApp”和“hideNotify/showNotify”。MIDP中的说明是应该调用“pauseApp/startApp”。但是,有些手机的操作系统并不正常地调用它们,而是调用“hideNotify/showNotify”[5]。为了提高程序的可移植能力,最好的方法就是这两种情况都要处理。

本游戏程序中,具体处理办法是:在pauseApp()方法中调用hideNotify()方法,在startApp()方法中调用showNotify()方法。处理游戏暂停的代码放在“hideNotify/showNotify”中。这样就保证无论手机操作系统用哪种机制来处理中断,暂停或继续的处理代码都能执行到。具体的代码在程序的NurturanceMID 类和NurturanceCanvas类中。

3 实例测试及性能分析

游戏代码中需要的图形和声音等资源都放在sre目录下的res文件夹中,java文件放在sre目录下的rpghb文件夹中,游戏中用于持久化存储的RMS文件会自动生成在sre目录的父目录下。游戏代码在JBuilderX平台、Sony Ericsson J2ME SDK 2.2.1、SonyEricsson_S700模拟器上测试通过,具体配置如图3所示。

加载游戏的JAD文件配置是在JbuilderX系统中进行的,“Required”选项中:“Name”是写游戏名称的,“Vendor”是写开发人或开发商的;MIDP和CLDC一定要用1.0,游戏打包后的JAR文件是187K,运行时占用的最大内存为790K左右,完全符合SonyEricsson_S700手机硬件的要求,在程序运行时也没有明显的不流畅。

4 结论与展望

手机游戏程序与普通PC机上的游戏程序基本的设计思想和基本的编程技术都是相同的,只是由于手机中系统资源的稀缺,设计时必须要仔细考虑系统资源的承受能力,一个重要的原则就是要求游戏的设计尽量缩减对系统资源的使用。这样就导致手机游戏程序的部分功能在具体的处理过程中与普通PC机上的游戏程序不同。不仅仅是手机游戏程序,所有的嵌入式设备的应用程序的设计原则都要求尽量缩减对系统资源的使用。

现在限制手机游戏发展的瓶颈是手机的硬件处理能力和联网传送能力。随着技术的发展,相信这些问题在不久的将来能很快得到解决。那时,可以将网络游戏的客户端下载到手机上,在手机上运行网络游戏的部分功能,如:买卖物品、在固定的区域练级。那时手机游戏就能在不降低趣味的基础上充分发挥其随时随地不受地点限制的特性。

参考文献

[1]杨秋霞.基于J2ME的手机游戏开发.计算机时代,2005(5):11-13.

[2]Cay S.Horstmann,Gary Cornell.最新Java2核心技术.第五版.王建华,董志敏,杨保明,译.北京:机械工业出版社,2003:61-64.

[3]David Brackeen.Java游戏编程.邱仲潘,译.北京:科学出版社,2004:39-40.

[4]http://gceclub.sun.com.cn/chinese_java_docs.html.

安卓手机设置通知铃声教程 篇3

安卓手机出厂时都自带部分铃声,一般都不是MP3类型的.,通常是SMAF格式或者MID的,节奏简单也清晰,下面来讲讲如何更换安卓手机自带的铃声。 菜单层次:主菜单——声音——手机铃声(通知铃声)就到了,下面配图说明下

桌面环境下,按菜单键弹出设置界面,选择声音菜单(图1)。就出现了铃声设置和通知设置界面,在这里你可以设置来电铃声和短信以及通知的铃声

选择喜欢的铃声停顿1秒后会响起铃声,喜欢的话就点击确定就更换成功了。

游戏视频制作简易入门教程 篇4

一、视频录制教程: 推荐大家使用游侠版FRAPS FRAPS下载地址:点击下载

使用FRAPS录制:启动FRAPS后,如图设置:

第二步:剪辑和配乐:

推荐大家使用premierepro 2.0来剪辑视频,简称PR.非常容易上手!premierepro 2.0下载地址: 点击下载

下载汉化包

下载地址

请使用迅雷下载,不然无法下载!

下载完后,解压缩。打开ssgap2文件夹里的setup.exe开始安装!序列号则打开keygen.exe!如图:

安装完毕,再安装汉化包,然后是激活!

激活说明:

1、安装序列号:如 1132-1274-0820-2489-1609-8489

2、安装完后会要求激活,选“其他激活选项”——>“电话激活”——>“下一步”,这时它会生成一组激活号;也就是你的机器码,就在序列号下面。

3、运行注册机,把刚才的激活号填入注册机的Request code一栏中(注意:要去掉间隔符-),这时注册机会根据所填入的激活号,生成用于激活的授权码;

4、最后输入生成的授权码,按“下一步”后即可激活成功!

如果想让自己的视频看起来比较专业,一般都需要制作一个片头来衬托,如果你没有精力去制作片头,17173也为你提供了一个片头视频,点此下载

PR2.0新手入门教程:

新建节目--选择自定配置,如图,编辑模式选择桌面模式,帧率25.帧大小一般为640*480!如果你要做高清的,可以选择1024*768!其他默认!

点击观看大图!

PR2.0界面介绍:

1,素材区

2,工作区

3,预览区

4,控制台

5,特效区

三:视频上传:

视频做好了怎么办?当然不是放自己电脑里孤芳自赏啦,得给朋友们看看呀,提提建议什么的,下次就可以做出更好的视频来了!

17173为大家提供了无限的免费空间供大家使用!只要你有一个17173的ID或论坛的ID就可以了,地址是http://vlog.17173.com 如果不知道怎么上传可以看下面的教程!上传教程

http://media.17173.com/videoup.shtml

这里还有一贴,是来至热心玩家的视频制作心得,大家也可以看看: 链

j2me手机游戏开发教程 篇5

一、设置ce

1、点图中右边的“设置”:

2、选“其它”项,设置如下:

二、OD设置 到论坛搜索最新的OD,多试几个。在360里添加信任。先打开OD,再打开游戏。在使用OD时,不要使用内存访问和写入断点,其它断点可以使用。

第一课、用ce和od找绿色征途的人物血量

1、用ce搜索精确的数值270。

2、让怪一直打,人物不断掉血,用ce搜索减少的数值,直到最后只剩2个值。

3、用ce依次修改这两个值,发现当第二个值改变时,血量随之改变,所以第二个正确。看效果:

3、用OD附加游戏,然后DD 066FD2C2(DD [地址]--使用堆栈格式转储)十六进制10e对应的十进制就是当前血值。

3、在地址066FD2C2处,下硬件访问断点,游戏自动断下。则断下地方上面一句,就是血的偏移。

第二课、简单解释游戏的基址和偏移的关系(“绿色征途”人物篇)

一、基址、偏移就有如下面的关系: 性偏移x为第一个对象的某个属属性偏移y为第一个对象的另外的偏移a为第一个对象基址属性偏移z为第一个对象的另外的性偏移x为第二个对象的某个属性偏移y为第二个对象另外的属偏移b为第二个对象基址游戏的基址性 偏移z为第二个对象另外的属属性a偏移第三个对象的某个属性b偏移第三个对象另外的偏移c为第三个对象基址属性c偏移第三个对象另外的

二、举例: 上一节课我们已经找出了征途的人物血量偏移:[[00b89c08]+540]+1152,其中(1)[00b89c08]为游戏基址(2)[00b89c08]+540就是人物基址,如果将偏移540改为其它的值,就有可能代表其它的对象,比如包裹、怪物、技能等等。(3)[[00b89c08]+540]+1152 存放人物的血量,如果把偏移1152改为其它的值,就对应其它的属性,比如血最大值、当前蓝、蓝最大值、坐标值、名字、等级等等 说明:关于游戏基址、偏移的理解每个人都有自己的想法,说法并不是绝对的,只要自己能懂就行。

第三课(1)、利用OD遍历人物属性(“绿色征途”人物篇)

一、遍历步骤以及一些属性偏移

1、在OD的命令栏使用命令dd [[00b89c08]+540]就等同于dd [[00b89c08]+540]+0,在数据窗口得到如图所示的窗口:

2、双击第一项,得到其它项相对于第一项的偏移:

3、因为人物当前血偏移: [[00b89c08]+540]+1152,所以我们可以先到偏移为1152附近找找看,使用命令DD [[00b89c08]+540]+1152,来到偏移为1152处:

4、因为人物属性好多数据为整数型,所以在OD数据窗口点右键,然后选择长型/无符号十进制:

(2)、利用龙龙遍历工具遍历人物属性(“绿色征途”人物篇)游戏更新了,基址变为[B90488]。,貌似连人物属性的偏移都有所变化。今天再讲个工具来进行遍历。龙龙遍历工具可以从我们论坛上搜索找到。在论坛上有很多工具,提高了分析游戏的效率,在此非常感谢做这些工具的大牛,膜拜中„„

一、龙龙遍历工具优点简介:

1、能够迅速的遍历出各种类型的数据,包含8种数据类型。

2、具有过滤功能,可以直接搜索我们需要找到的数据。而OD需要自己一个个的去看。

3、任意双击个地址进去,也可以实现对数据的跟踪。

二、龙龙遍历工具的使用简介(对照图片中的地址项看): 假设现在已经找到某个属性的地址为:[[基址]+a]+b,含有一级偏移a和二级偏移b。

1、如果这个地址里一级偏移a已经确定,二级偏移b不确定,则需要循环递增找出b,让b从0开始循环递增,所以在二级偏移处填0,则操作如下图: 菜鸟教程第四课、用ce和OD找玩家(怪物)选中状态偏移 广海: lchhjx 转载请注明出处!在游戏中存在一种内存地址,这个内存地址的值只会随玩家(怪物)选中是否被选中而改变。只要选中某个玩家(怪物),而且不管是否是同一,这个内存地址的值都不会改变;而在没有选中时,这个内存地址的值才会变为其它的某个定值。我们就可以根据这个内存地址的值来判断当前有没有选中某个玩家(怪物)。根据经验猜测在没有选中玩家时,该内存地址中的数值为0,而选中某个玩家后,该内存地址中的数值应该大于0。

一、步骤

1、不选玩家,用ce搜精确数值0,数据类型选2字节。为什么不用4字节呢?因为在这之前,我用4字节搜索了以后没有发现比较好的数值,所以换了一种数据类型来继续查找。

2、选中某个玩家,查找大于0的数值:

3、让自己绕这个玩家走两步,因为你已经选中一个玩家,不管你现在做什么动作,这个内存地址中的数值都不会改变,所以搜未更改的数值:

4、重复上面的步骤(恰当的选择,不一定完全照搬),发现还有17个地址,现在选中了一个玩家: 菜鸟教程第五课、用ce和OD通过玩家名字找到玩家数组 广海: lchhjx 转载请注明出处!因为游戏在遍历周围玩家时,程序肯定会访问玩家的某个属性,所以我们可以先通过ce找到某个玩家名字存放的临时地址,用OD再找到该玩家的各个属性存放的临时地址,然后逐个下断,找到玩家数组。

一、步骤:

1、先找个有几个玩家的地方(晕,找半天没找着其他人,一怒自己再申请了二个号-_—,其实这样更好,周围玩家都是自己控制,更方便找数据),用ce附加的是“明子南曲”的游戏教程,另外两个人“广海驾临”、“握来也”就是周围玩家。

2、用ce搜索文本型数据“广海驾临”:

3、总共有16个结果,然后我们就逐条修改其名字,对照游戏,找出准确的地址(想想有没有其它的方法哦^^)菜鸟教程第六课、猜测加验证,快速找当前怪物血偏移的思路 广海: lchhjx 转载请注明出处!

一、找当前怪物血的难处:

1、当前怪物的血量具体是多少很难知道。有的人通过打怪的次数来估算血量,这种方法其实是不好的,因为征途里的怪物血量是经过处理的。

2、怪物很容易被打死,这样就使之前的搜索失去了意义。

3、可能人物掉血也较快,需要喝红,这样也浪费。

二、与众不同的思路(猜测): 在第四课中我们可以用同一个偏移,同时表示玩家、NPC、怪物的选中状态。在这可以猜测:当前选中怪物和当前选中玩家的血偏移是一样的,通过找当前玩家的血偏移再来确定怪物血偏移。这样做有这样的好处:

1、自己开两个号,玩家的血量是可以看到的,而且没有经过处理。

2、找个等级最低的怪,让玩家打一下,这样不用担心被怪物打死,或者打死怪,可以慢慢的分析游戏。

三、找当前玩家血偏移的详细过程(分析时要一直选中某个玩家): 开两个号,“明子南曲”和“握来也”。用ce打开“明子南曲”的游戏进程。将“握来也”作为周围玩家。已知“握来也”满血为214。

1、一直选中周围玩家“握来也”,用ce搜4字节型精确数值214:

j2me手机游戏开发教程 篇6

手机游戏作为2.75G和3G平台上的重要应用, 从最近的2年来看, 在国内的市场一直保持着高增长的趋势, 从易观国际的分析数据来看, 不难看出, 手机游戏的市场将每年呈现翻倍增长的态势, 也正因为如此, 手机游戏被称为是继PC网络游戏后的下一个金矿, 从而获得了广泛的关注。国家非常重视游戏人才的培养, 大力支持有条件的高校设立游戏专业, 各高校也敏锐地洞观察到手机游戏产业未来的发展前景, 适时地开设手机游戏的相关课程。

二、课程定位

1.课程基本理念。

突出学生主体, 注重学生的能力培养, 尊重个体差异, 注重过程评价, 整合课程资源, 改进教学方式, 采用引导式教学, 拓展学习的渠道。

2.课程设计思路。

坚持以培养学生的就业能力为导向, 坚持以高职生源特点作为设计课程教学流程的依据, 坚持以专业知识和职业技术应用能力、自主学习能力、创新能力以及综合职业能力培养为课程目标。通过三个小项目 (模拟手机写短信、打数字游戏、模拟电话本) 先后讲解了J2ME开发环境、高级界面开发、异常处理、多线程、数值运算、字符串处理、时间管理、随机数、集合、定时器、画布开发、RMS编程等内容。

三、教学模式、教学方法与手段

1.教学模式

由于本课程的工程实践性强, 属于职业技能课旨在培养学生动手实践能力, 因此采用教、学、做一体化的方式进行授课。将理论学习与项目实践紧密结合, 为学生职业能力培养和职业素养养成起到坚强的支撑作用。

2.教学方法

(1) 课堂理论

在教学中积极改进教学方法, 结合学生学习规律和个性特点, 从学生认知能力实际出发, 强调以学生为主体, 充分调动学生学习主动性、实践性。课堂教学采用讲授、分析讨论、案例分析等多种教学方法相结合的方法。

(2) 任务驱动型实践教学

改传统的验证型实验为任务驱动型实验。在理论课程教学过程中穿插相应的实验教学内容作为教学辅线, 让学生边学边操作、在操作中学习, 学以致用, 体会到理论知识的实际应用。培养学生分析问题、解决问题的能力。

(3) 实训实习

本门课程结束, 安排相应的实训项目, 确保知识的巩固, 为学生编写企业真实项目打下坚实基础。

(4) 企业真实案例

通过与企业合作, 让学生早接触真实企业项目, 实现学习与就业的无缝链接。

3.教学手段

充分利用现代教学手段, 运用课件的立体、形象、互动的优势, 帮助学生理解教学内容。网络课堂的优势在于传输的信息量大, 内容形象直观, 培养了学生的学习兴趣, 对学生的自学能力和预习、复习和应考也提供了有力的帮助。

四、教学建议

1.本课程分理论、实践、项目三个教学模块, 各模块可以采用连续教学或分段教学两种方式实施。教学过程中实验项目采用理论实践一体化进行教学, 理论部分教师结合企业的管理规范与需求组织教学, 可采用多媒体等教学资源辅助教学。

2.在教学过程中, 要重视介绍本专业领域新技术、了解新技术的发展趋势, 贴近企业实际。

3.在教学过程中应立足于加强学生实际操作能力的培养, 通过项目训练提高学生学习兴趣, 激发学生的成就感, 每个项目的实施可采用小组合作学习的方法, 强化学生的团队协作精神。

4.在教学过程中, 应发挥学生学习的自主性, 以能力本位为原则为学生提供职业生涯发展的空间, 努力培养学生获取、分析和处理信息的能力。

5.教学过程中教师应积极引导学生提升职业素养, 提高职业道德, 形成职业习惯, 努力培养创新能力。

五、考核方式和评价方法建议

1.改革传统的学生评价方法, 采用阶段 (过程性) 评价、目标评价、项目评价、理论与实践一体化评价模式。

2.实施评价主体的多元化, 采用教师评价、学生自我评价、社会评价相结合的评价方法。

3.评价手段可以采用观测、现场操作、提交实践报告、闭卷或开卷测试等。

4.评价重点为学生动手能力和实践中分析问题、解决问题能力 (及创新能力) , 对在学习和应用上有创新的学生应予特别鼓励。

六、教材编写建议

根据专业人才培养方案的总体设计思想及本课程的教学目标要求选用合适的理论实践一体化课程教材。但由于市面上符合本院学生要求的教材比较稀缺, 能由了解学生的教师们缩写一套适合的教材为上选。教材开发的建议为:

1.组织开发专业主干课程系列教材, 以更好地实现专业人才培养目标;

2.开发教材的主编和主审, 须是直接参与人才培养方案和课程标准制订的骨干教师;

3.教材结构和内容须符合人才培养方案和课程标准提出的要求, 讲究“实在”、“实效”, 编排时要符合高职教学的特点和要求;

4.选取的项目或课题应将企业的实际应用和学校的实际有机结合, 由浅入深, 由简到繁, 循序渐进, 符合学生的学习基础和认知规律的原则;

5.教材编写应充分体现理论实践一体化教学的特点, 理论知识和实践操作有机结合, 内容的选择力求明确, 可操作性强, 便于贯彻“做中学、学中做”的理念;

6.教材语言平实、图文并茂, 便于学生自主学习。注重新技术、新知识、新方法的介绍, 适度关注学生的可持续发展, 为学有余力的学生留下进一步拓展知识能力的内容和空间。

目前的手机游戏课程大都面向学习软件技术的学生开设, 许多学生对技术非常热衷, 程序设计是高等院校计算机系教学的传统优势, 我们应该以编程为基础, 并结合游戏行业特色, 使其逐步完善。可以预见, 伴随着技术的飞速进步, 手机游戏将逐步向其游戏本质回归, 未来的手机游戏大师是能够从更长远的历史文化背景中把握游戏本质的人。

摘要:本文通过分析手机游戏的发展趋势, 根据高职院校开设的基于J2ME手机游戏开发课程, 讨论了该课程的课程定位、教学模式、教学方法与手段、教学建议、考核方式和评价方法建议、教材编写建议等内容。

关键词:手机游戏,课程定位,教学模式,教学方法与手段,教学建议

参考文献

[1]易观国际.中国手机游戏市场趋势预测.2008-2011[R].2009.

[2]徐延宁.计算机游戏课程体系建设.计算机教育, 2008, 8.

[3]周源.关于高职软件项目开发指导课程标准的探讨[J].计算机教育, 2008, (19) :127-130.

j2me手机游戏开发教程 篇7

按照用户使用习惯及界面排版,我们将91手机助手的主界面归类划分为七部分,如下图:

各部分功能介绍如下:

1. 系统相关:点击后可弹出菜单,主要进行手动检查更新,开启启动,软件语言等设定;

2. 功能分页标签:点击各个按钮可快速进入不同功能分类,包含“开始页面”、“资料管理”、“系统维护”、“媒体娱乐”、“网络社区”、“更新日志”等;

3. 快捷功能菜单:罗列了使用最频繁的几项功能,点击后可快捷进入相应的功能,包含“文件管理”、“程序管理”、“图片管理”、“我的文档”、“短信聊天”、“关闭手机”等六项功能;

4. 快捷资讯:提供91手机平台最新资讯信息,原创评测内容,最新软件及游戏推荐,手机学堂问题等相公内容;

5. 连接方式选择:允许用户选择不同连接方式来管理iPhone:USB或WIFI,

6. 推荐内容:软件、音乐、图书推荐版块,为用户提供更多实用的软件、动听的音乐、好看的图书。

7. 91通行证登入口:帐号登入,体验中国最大的手机互动社区――91手机社区。

1.1、系统相关:

点击91手机助手左上角圆圈内的iPhone可弹出系统相关设定选项。选项功能说明如下:

* “隐藏iPhone PC Suite”点击可将91手机助手隐藏在任务托盘栏外;

* “检查更新”点击该按钮可手动检查更新91手机助手;

* “选择语言”可以设定91手机助手的界面语言,当前版本91手机助手支持英语、中文简体、中文繁体三种语言;

* “开机启动”可设定91手机助手是否在系统启动时随系统加载自动启动;

* “退出”退出91手机助手。

1.2、功能分页标签

91手机助手的所有功能按照其功能作用分类成多个大类,每个大类为一个标签页,点击可进入各个功能标签页,并选择其子项功能。

1.3、快捷功能菜单

快捷功能菜单中包括了91手机助手最频繁使用到的几项功能,分别为“文件管理”、“程序管理”、“图片管理”、“我的文档”、“短信聊天”、“关闭手机”等六项功能,点击可开启该功能项。

1.3.1 文件管理

“文件管理”为“系统维护”功能分类中的一项子项功能,用户可通过点击此处链接了解详细使用说明。

1.3.2 程序管理

“程序管理”也是“系统维护”功能分类中的一个子项功能,用户可点击此处链接了解详细的使用说明。

1.3.3 图片管理

“图片管理”为“资料管理”功能分类中的一项子项功能,用户可点击此处链接了解详细的使用说明,

1.3.4 我的文档

“我的文档”功能为“文件管理”功能的一个延伸,点击“我的文档”,点击“我的文档”按钮,会开启“文件管理”界面,并自动定位到您iPhone上的/private/var/root/Media/My Documents目录下(用户空间)。在“我的文档”功能对文件增删改操作与“文件管理”一致,用户可点击链接查看。

1.3.5 短信聊天

“短信聊天”功能是“资料管理”下“短信管理”功能内的一个子功能,您可以使用该功能便捷的方式将短信发送到任何人,并且支持群发功能,功能界面见下图。

* 聊天记录框中显示该次短信聊天中的所有信息;

* 短信接收者中显示所有接收本条短信的联络人或电话号码,可通过短信接收者框下方的添加其他号码栏目来添加不在联络人内的号码;

* 联络人中可自动读取iPhone联络人内的联络人信息,并显示在此;

* 短信内容撰写中,想通过短信发送的内容均可在此输入,在顶部会显示短信的字数,及该次短信分成几条发送;

可以从联络人项目中选择您欲发送短信的联系人的名字,勾选后自动添加到参与者中,或者是直接在号码添加栏中添加号码,按回车键后添加到参与者中。

从参与者中移除的话,可按照提示双击或者按Del键进行移除操作,若要选中多人可按Ctrl或者Shift键。

短信发送支持快捷键发送,按“Ctrl+Enter”组合键或者是直接点击“发送”键即可发送短信。

1.3.6 关闭手机

在关闭手机选项中提供了注销、重新启动、关机三项功能,只要您的iPhone与PC保持连接状态,就可以方便的用iPhonePC Suite控制您的iPhone了。该功能甚至可以在您的iPhone死机的情况下重启或者关闭您的设备。

1.4、快捷资讯

快捷资讯是提供91手机平台最新资讯信息,原创评测内容,最新软件及游戏推荐,手机学堂问题等内容的一个入口,该板块会实时更新91手机平台上最新发布的资讯新闻、评测文章、手机问题,用户点击感兴趣的标题即可观看到相应的文章内容。

1.5、连接方式选择

j2me手机游戏开发教程 篇8

Java web课程结束了,在完成了eclipse三份实验报告之后我开始总结这门课程自己究竟学到了什么。

从C语言到Java,再到jsp,最后到java web,一直都在与编程都打交道,学好它一是专业的需要,二是自己觉得它今后对自己会有很大的用途。C语言是一个面向过程的语言,而Java是一个面向对象的语言。在C语言里,行为称为函数;在Java里,行为称为方法。在C语言里,只有变量和函数;在Java里,一切逻辑由类封装,即 “万物皆对象”。C语言的struct和Java的类相似,但struct里只能有属性,而类里可以有属性和方法。所以,C语言的分工不清晰,主控程序几乎承担了全部的职责;而Java可以把方法放在类里,对象的职能很多,可以单独完成某个类的全部方法。

首先我想回顾一下java web 这本书上的主要内容:

第一章是对Web应用程序的概述。从中我了解到Web应用程序的三层体系结构:表示层、业务层、数据存取层。它们同是叙述在编写代码时应做的规划和应遵循的规则,这种规划在以后的学习中时有出现,说明编程并不是一味地进行循环判断、死记硬背,而需要在技术上有所加强、在效率上有所提高。接下来学的是JSP知识。要学JSP,就必须会HTML,如果HTML学不通,这对以后的学习都是一个瓶颈。这点我有所体会。因为我对HTML掌握得比较好,在这方面没有遇到什么困难。但如果没掌握好这些知识,加上要学新知识,就会在旧难题的基础上增加新难题,两头招架,实有些吃不消。所以,基础是很重要的,基础一定要打扎实,吃透,否则上层建筑的建起就不会很顺利甚至没法起步。

然后是JavaBean。JavaBean里有set()和get()方法,用这些方法能很容易地传值,逻辑上更标准,代码看起来也更规范。但set()和get()方法只是用来对属性进行操作的,所以如果是进行复杂的逻辑或对数据库进行操作等,那么就不要写成set()和get()方法,只用一个有返回值的方法就足以。这样直观方便,且符合规范。

接着是Servlet。它给我的第一感觉是很专业、很难懂。书上介绍了一大堆接口、类、和重写的方法,一时觉得晕头转向。后来用得多、看得多了,Servlet的基本格式也记得差不多,其实也没什么难的。只要记住Servlet是一个用Java编写的应用程序,在服务器上运行,用来处理请求和响应,也可以单独做为一个Web页面。

在JDBC技术这章,我感到学习的压力。JDBC的工作原理、JDBC的分类、它的主要接口、以及它连接数据库的基本过程和运行效果等事先后我没有听懂。后来在图书馆借到了一本资料书 ——电子工业出版社出版的《Java Web从初学到精通》适合Java开发Web应用和J2EE方面的初学者加上编程实战演习,总算弄懂了点眉目。

最后一章主要是一些技术专题。例如访问路径问题、结果集处理、复杂查询等。在前面几章的的能力功底基础上这章显得要简单轻松地多。大致类似于对前面知识的系统总结。

以上就是对这个阶段学习的一段回顾。

接下来我想总结一下自己的学习心得: 首先学习这门课程,就必须先要了解什么是web应用。通过浏览器可以访问新浪网、中华网、淘宝网、网易、搜狐网、微软的网站及sun 公司的网站等,这些就是Web应用。对于web 应用,我们需要使用浏览器,通过网络访问在远程的服务器运行的程序。Web应用指的就是这些网站中的程序。

其次,是编程。学习编程最重要的就是勤记忆,勤练习,勤思考。需要记忆很多,有些东西必须要死记,没有偷懒的办法,在记忆的时候可以找一些规律,比如把类似的东西归在一起记忆。平时在做练习的时候书上的例题和习题很重要,只要把书上的例子吃透,课后的习题都会做,这样就能达到掌握知识的目的,最后在期末复习的过程中要不时地复习前面的知识,这样才能熟练掌握所学的知识。在勤思考方面,就是在平时的编程演练中遇到困难的时候不要立刻急着去问身边的同学或是老师,自己应当对照课本或是相关的学习资料慢慢进行修改,只有在自己确实已经尽力但仍然不知如何操作的情况下才可以去询问别人,只有这样才可以加深自己的影响。

还记得自己当初最开始时学习java的情景。那时自己除了知道什么是继承,封装,多态,抽象类,接口这些外,其他的就什么都部知道了。后来自己在慢慢摸索的过程中才逐渐积累了对这门学科的敏感度 开始接触Java觉Servlet是一个非常深奥的技术。我曾经想学习网页设计,看到HTML哪些松散的标记,我放弃了,最终也没有学会做网页。只知道网页编辑工作有Drameware 或FrontPage。当接触Serlvet后,发现做网页竟然也可以像写Java程序一样进行编写。完成第一个用Servlet写的WEB版的HelloWorld 程序,足足花费了我半天时间。主要是花费在环境搭配上面。一个小小的HELLO World ,用Drameware可能也就一分钟就能搞定的事。对于一个完全不懂HTML的人来说,要想用Servlet来开发动态WEB应用还是太难了。接下来很快就接触到了JSP。JSP并不需要我在Java程序里写HTML代码,而是变成了在HTML中写Java程序。初学时,所有的数据库连接,数据库访问,数据显示,业务代码和HTML标记等都写在JSP代码中,感觉JSP真是无所不能。在做一些小应用时,开发速度也非常的快。而当遇到了比较复杂的业务逻辑后,JSP开发就像是一个恶梦,每天大量的工作就是调试页面,当其它页面需要类似的功能时,进行代码拷贝来进行代码的复用,后来才知道这就是典型的Model 1模型。当把JSP与Servlet相结合后,一切都发生了改变。JSP仅用于数据展示,而Servlet用于进行业务调用和页面流程控制,这就是所谓的Model 2模型。原来JSP并不是Servlet的替代品,JSP更需要与Servlet进行合作。再明白了Servlet与的重要后,才回过头开始去学习Servlet,包括Servlet的生命周期,Servlet的重要接口及方法,自定义标签等。通过这样反复的联系我终于在面对java和jsp时不再像以前那样那么没有自信了。

所以花费些力气去学习Java基础,学习Jsp,Servlet,甚于学HTML,Javascript对进行Web开发都是十分必要的。

j2me手机游戏开发教程 篇9

随着3G时代的到来, 手机游戏的发展将迎来一个新的发展空间。现在, 无论是在地铁里, 还是机场的候机大厅, 经常可以看到很多人在不停按键盘玩手机游戏来打发时间, 手机网游也在掌上一族中日益流行, 手机游戏己经成为整个视频游戏中发展速度最快的领域之一。

据统计截至目前, 全世界已有大约1亿部手机在使用。来自Strategies Unlimited公司的数据显示市场上手机的数量预计将每年翻一番, 到2010年, Java手机预计将占全部手机出货量的83%。在国外, 手机游戏产业己经发展的如火如涂, 据Juniper research的研究显示, 到2008年时, 在欧洲, Java游戏的产值将达到97亿美元, 其中Java游戏占到65%。然而, 目前, 手机设备有数百种, 没有统一标准, 各手机设备间具有很多差异, 如何有效地使得手机游戏应用程序支持多手机设备是当前手机游戏开发行业迫切需要解决的问题之一。

2 技术基础

2.1 J2ME的体系结构

JSR68制定了J2ME最基本的规范, 即J2ME的体系结构[1], 如图1所示。J2ME由3种类型的规范堆栈而成, 分别是配置规范 (Configuration) 、简表规范 (Profile) 以及可选扩展 (Optional Packages) 。

在最底层的配置规范, 定义了设备所必须的硬件能力, 如ROM、RAM的容量, CPU的时钟周期至少是多少, 连接到网络带宽至少是多少。同时还定义了一组低级的API, 代表了Java最少必须提供的低级功能, 即核心类库的子集合。

J2ME将所有的嵌入式设备大体上分为两种:一种是资源有限, 包括计算功能有限、电力供应有限、联网带宽有限或是显示器大小与色彩有限的嵌入式设备;另外一种是资源相对无限的设备。前一种设备被称为连接有限设备Connected Limited Device, 如果要能运行Java程序, 必须满足某些特定条件 (CPU速度、内存、联网带宽) , 这些条件定义为CLDC连接有限设备配置 (Connected Limited Device Configuration) 。后一种设备被称为连接设备Connected Device, 其相应的规范为CDC连接设备配置 (Connected Device Configuration) 。

架构在Configuration之上的Profile明确地区分出各种嵌入式设备之上的Java程序应该如何开发, 以及它们应具有哪些功能。Profile层在特定的Configuration层上实现, 而程序员则负责在特定的Profile上开发应用程序。

在J2ME中还有一个重要的概念是可选扩展 (Optional Package) , 它是针对特定设备提供的类库, 比如某些设备是支持蓝牙的, 针对此功能J2ME中制定了JSR82 (Bluetooth API) 提供了对蓝牙的支持。

2.2 CLDC

2000年5月, Java Community Process (JCP) 公布了CLDC1.0规范 (即JSR30) 。作为第一个面对小型设备的Java应用开发规范, CLDC是由包括Nokia、Motorola和Siemens在内的18家全球知名公司共同协商完成的。

在CLDC1.0版本中定义了以下功能[2]:

(1) Java核心语言与Java虚拟机的特性。

(2) 核心Java类库。

(3) 输入/输出。

(4) 对网络的支持。

(5) 对安全性的支持。

(6) 对国际化的支持。

CLDC包含了一个基本的J2ME运行环境, 其中包括虚拟机和核心的Java类库。作为专门针对于小型设备的配置, CLDC对J2SE类库进行了大量的简化, 其类库只保留了Java规范中定义的最核心的3个包[3], 即java.io.*、java.lang.*和java.util.*, 并重新定义了一个新的包javax.microedition.io.*。其中javax.microedition.io.*用来支持通用连接框架 (GCF, Generic connection framework) 。

2.3 Midlet应用程序

Midlet套件包含两部分[4]:Java应用程序描述文件JAD和Java应用程序资源文件JAR。JAD文件描述了套件中的应用程序信息, JAR文件包含真正的应用程序。Midlet套件可以通过WAP、HTTP、红外或者蓝牙发布到手机设备上。手机设备一般有特定的应用程序管理软件负责应用程序的下载和生命周期。这种软件通常称为Java应用程序管理器 (JAM) , JAM能够查看和定位JAD文件, 传输JAD和JAR文件到手机设备上, 在手机设备上安装己经下载的Midlet套件, 执行Midlet套件, 并且允许用户删除手机设备上的Midlet套件。一个套件的生命周期如图2所示。

3 RPG游戏开发总体框架结构

一般的Midlet应用程序必须从Javax.microedition.midlet类派生, 并覆盖基类的Start App () 、Pause App () 、Destroy App () 方法, MIDP应用程序被激活时自动调用Start App () 方法, 当程序第一次运行或是从Pause状态激活都将调用Start App方法;当一个暂停事件发生时, 如有电话或者短信到达时, Pause App方法可能被调用, 这取决于具体的手机, 当用户选择结束游戏时, 手机将自动调用destroy App方法, 无论此时应用程序是出于暂停或激活状态。

游戏应用程序通常还需要包含一个从Canvas的派生类, 并重载Paint方法实现游戏界面的绘制和实现游戏逻辑。通常从Canvas派生的类需要实现Runnable接口和Command Listener接口, 实现Runnable接口, 通过run方法实现主线程控制游戏逻辑, 实现Command Listener接口, 需要通过command Action方法实现各个命令动作逻辑。

基于MIDlet应用程序的基本结构[5], 一般来说, 其设计框架的总体类结构如图3所示。

为详细介绍手机RPG游戏的总体框架结构, 结合从前开发的“Henway”小游戏实践进行介绍。这是一个非常简单的手机RPG游戏, 主要实现手机客户端的人机交互功能:玩家使用手机上的按键来来引导小鸡穿过车流, 如果成功引导小鸡穿过马路, 就会发出祝贺声音并奖励玩家25分, 如果小鸡在车道上被汽车撞倒, 就会发出压扁声音, 小鸡会重新定位在开始位置, 同时在屏幕的右下角小鸡头的数目会减少1, 当最终失去所有的3个小鸡, 游戏就结束了, 背景音乐停止播放, 并发出游戏结束的声音。

3.1 工作流程

如图4所示。

3.2 游戏架构流程

如图5所示。

4 技术分析

这款游戏涉及到两种精灵, 小鸡精灵和汽车精灵。以小鸡精灵为例, 在小鸡精灵设计部分, 一方面根据用户按键使小鸡动起来, 另一方面要检查小鸡是否安全通过了马路。

用Hcanvas类的update () 方法来启动游戏, 根据用户按键来移动小鸡。

游戏运行界面如图6所示。

5 结语

手机游戏开发是一个系统工程, 需要多媒体、数据库、网络通信等技术支持。通过对一个简单J2ME游戏开发过程实践, 展示RPG游戏开发的总体框架、框架流程以及游戏开发中常见的精灵控制技术, 以期对同类软件开发有一定的借鉴作用。

参考文献

[1]考夫 (美) , 潘颖, 王磊.J2ME开发大全[M].清华大学出版社, 2004.

[2]米川英树, 著, 博译文化, 译.手机游戏程序设计[M].北京中国铁道出版社, 2005.

[3]姚晓光.游戏开发核心技术[M].机械工业出版社, 2008.

[4]金春霞, 白秋产.基于J2ME技术手机游戏开发与实现[J].计算机与数字工程, 2008, (04) .

j2me手机游戏开发教程 篇10

QQ【 武林】友情提醒您,这个是在电脑上刷钻的教程,步骤开始:开始→运行→gpedit.msc命令→计算机配置→管理模块→网络→Qos数据报计划程序→限制可保留宽带→已启用→宽带限制→修改为0(默认为20%)→应用→确定(网络好的友友可忽略这步)

对于某些事情,我只是想看看究竟,请理解:找个网络好的时段,打开移动网上营业厅:业务办理→GPRS套餐变更→选择GPRS套餐(多个)→变更RPRS优惠→确定,

上一篇:2018年高考.散文阅读下一篇:课程管理个人工作总结