MIDP2.0相对于MIDP1.0最大的变化就是增加了media和game包,在rms的读取也有微小的改动.其实,MIDP2.0主要是给游戏开发提供方便,采用增加的两个包能够快速开发游戏程序,效率相对于MIDP1.0要高些. 不过现在的市场行情是,支持MIDP2.0的手机比支持MIDP1.0的远远要少,考虑到市场的效应,还是应用MIDP1.0的为多.并且根据目前的状况,此情形还会持续很长一段时间. 如果你学的话,建议双管齐下,因为两者区别不大,但MIDP2.0的可移植性好些. 举个例子, 比如,在MIDP1.0的状况下,开发西门子的手机游戏,如果要播放音乐的话,就要 import com.siemens.mp.media.*; 这样的直接后果就是在别的型号的手机无法运行. 所以在平时开发中就会遇到: 支持MIDP2.0的手机不多,运用MIDP1.0的做出的声色俱全的游戏移植性又不高的尴尬情形 ,所以,究竟选择哪个开发,就是仁者见仁,智者见智了
MIDP 1.0 提供了以下功能:
·显示工具箱
·用户输入方法
·持久性数据存储(使用简单的面向记录的数据库模型)
·基于 HTTP 1.1 的网络(使用 CLDC 通用连接框架)
Java 规范请求 (Java Specification Request, JSR)-37 中定义了 MIDP 1.0 标准。
MIDP 2.0
JSR-118 中定义了 MIDP 2.0 标准。
MIDP 2.0 于 2002 年 11 月正式发布,MIDP 2.0 的推出在一定意义上增强了 Java ME 的功能,主要体现在如下几个方面。
(1)支持操作图像的像素,支持 Alpha 通道。
(2)增强型的图形用户界面类 CustomItem,提高了高级界面类的表现力。
(3)Media 音频子系统填补了 MIDP 1.0 不支持声音播放的空白。
(4)Push 注册机制和安全模型增强了对 MIDlet 的控制。
(5)游戏开发包提高了游戏开发的效率。
(6)联网能力增强,可以支持 TCP/IP 甚至是 UDP 层的通信。
在MIDP1.0里面,Canvas的绘图只能写在paint(Graphics g)方法里,因为一来g参数在此方法结束后就没有意义了,保留它的副本没有用处;二来此方法由平台调用,而不是由Canvas这个线程调用。因此在MIDP里绘图总是一件很痛苦的事情,特别是需要保证Canvas线程与调用paint的那个线程同步(J2me的Specification说的是,可以保证你repaint了以后,paint方法在之后的某个时刻被调用,但不能保证马上就被调用,因为paint是个比较耗时的方法,它无法确定其他的paint是否及时完成了)。
在MIDP2.0里,有所改进了。首先是你可以通过GameCanvas的一个方法getGraphics来获取那个g,然后这个g就永不失效了(当然是在这个GameCanvas的生命周期内)。当然,这个g和1.0里的还是有所区别。这个g实际上是画在一块缓冲“画布”上,即内存里。完全画好以后,再用flushGraphics刷到屏幕上。缓冲的好处是可以让屏幕在画时不显得闪烁,很有用的东西。flushGraphics还有另外一个作用,就是强制输出,以达到显示的那个线程与游戏控制线程的同步(这也是为什么做时间协调时,要把显示方法所消耗的时间也计算进来)。
分享到:
相关推荐
**MIDP1.0开发者指导** MIDP(Mobile Information Device Profile)1.0是Java 2 Micro Edition(J2ME)的一个子集,专为小型设备如早期的智能手机和平板电脑设计,用于开发移动应用程序,特别是手机游戏。这个平台...
**J2ME手机游戏MIDP1.0游戏入门** Java Micro Edition(J2ME)是一种专门为嵌入式设备,包括手机,开发应用程序的平台。MIDP(Mobile Information Device Profile)1.0是J2ME的一个配置,主要用于创建移动设备上的...
J2ME MIDP1.0实现MIDP2.0里面的旋转方法
首先,我们来看标题"J2ME_make_map.rar_j2me_midp1.0",这表明这个压缩包包含了一个关于使用J2ME MIDP 1.0制作地图的教程或项目。MIDP 1.0是早期版本,但依然能提供基本的地图展示和交互功能,尽管可能不包含现代...
《J2ME_MIDP1.0_飞机游戏:面向对象设计的魅力与实践》 在移动设备技术蓬勃发展的年代,J2ME(Java Micro Edition)作为一款轻量级的Java平台,广泛应用于早期的智能手机和平板电脑,为开发者提供了丰富的应用开发...
【标题】"手机版象棋游戏采用MIDP1.0开发"揭示了这款软件的核心技术基础,即基于Java Mobile Information Device Profile(MIDP)1.0标准进行开发。MIDP是Java Micro Edition(Java ME)的一个子集,专为资源有限的...
MIDP 1.0(Mobile Information Device Profile)是Java ME(Micro Edition)的一个子集,主要用于移动设备,特别是早期的智能手机和平板电脑。这个框架提供了在这些设备上开发和运行应用程序的基础,尤其是针对游戏...
基于MIDP1.0实现动画效果:深入探讨与实践 在移动应用开发的历史长河中,MIDP(Mobile Information Device Profile)1.0作为Java ME(Java 2 Micro Edition)的一部分,曾是功能手机时代游戏开发和移动应用程序的...
《是男人下100层》是一款经典的手机游戏,这里提到的是其基于MIDP1.0版本的源代码。MIDP(Mobile Information Device Profile)是Java Micro Edition(Java ME)的一部分,专为功能手机设计,用于开发移动应用程序,...
MIDP1.0实现开n次方运算。 使用笔算开n次方的方式,实现了开n次方运算。 输入和输出参数都是字符串形式。 这样在MIDP1.0下也可以计算小数。
MIDP(Mobile Information Device Profile)1.0是Java 2 Micro Edition(J2ME)的一个子集,专为移动设备如早期的智能手机和平板电脑设计。它提供了一个框架,使得开发者可以创建在这些设备上运行的应用程序,尤其是...
MIDP 2.0相比其前身MIDP 1.0有着显著的改进,主要体现在以下几个方面: 1. **增强的用户界面**:MIDP 2.0引入了新的用户界面组件,如列表视图、表格视图等,使得开发者能够创建更加复杂和动态的用户界面。 2. **...
在本文中,我们将深入探讨J2ME手机游戏开发,特别是基于MIDP1.0平台的双人扫雷游戏的入门知识。MIDP(Mobile Information Device Profile)1.0是Java Micro Edition的一个子集,专门针对移动设备设计,允许开发者...
Midp2.0 API 是Java ME(Micro Edition)平台的一部分,专为移动设备和嵌入式系统的应用程序开发设计。NokiaUI 是诺基亚公司针对Midp2.0 API 提供的一个扩展,它提供了丰富的用户界面组件和功能,使得开发者能够创建...
MIDP2.0 API,J2me必用,MIDP2.0 API,MIDP2.0 APIMIDP2.0 API
博士:恩,单从Java的功能来讲,不同点在于N840对应的是MIDP2.0,而N820只能对应MIDP1.0。 尼克:呃?MIDP是什么呀?以前好像没有听说过呀…… NEC-MobileFriend带给我们的MIDP2.0讲座秉承JAVA初级讲座的对话...
MIDP2.0是MIDP1.0的升级版,引入了更多特性以提升用户体验和开发者便利性。它包括了Java Application API、用户界面组件CLDC(Connected Limited Device Configuration)以及网络连接功能。MIDP2.0的主要目标是提供...
### MIDP2.0教程概览与核心知识点 #### 核心知识点一:MIDP2.0在手机游戏开发中的角色与优势 MIDP2.0(Mobile Information Device Profile 2.0),作为Java ME(Java Micro Edition)的一部分,专为资源受限的移动...