`
shizhiwu
  • 浏览: 5037 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
文章分类
社区版块
存档分类

MIDP1.0跟MIDP2.0之间的区别 (网上摘录)

阅读更多
    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还有另外一个作用,就是强制输出,以达到显示的那个线程与游戏控制线程的同步(这也是为什么做时间协调时,要把显示方法所消耗的时间也计算进来)。
分享到:
评论
1 楼 鸟哥哥 2010-03-22  
学习了!

相关推荐

    使用J2ME Polish进行游戏编程

    J2ME Polish 游戏引擎为MIDP1.0的设备提供了完备的MIDP2.0游戏API。在这篇文章中,是从Robert Virkus的 Pro J2ME Polish 摘录的。你将学会通过设置各种预处理变量从而优化游戏引擎;在MIDP1.0平台游戏引擎受限的条件...

    JAVA上百实例源码以及开源项目

    百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级... 部分源代码摘录:  ftpClient = new FtpClient(); //实例化FtpClient对象  String serverAddr=jtfServer.getText();...

    JAVA上百实例源码以及开源项目源代码

    图片到图片装载器、绘制火焰效果的X坐标,Y坐标、得到X坐标,Y坐标值、绘制火焰效果Image…… Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT ...

    java源码包---java 源码 大量 实例

     部分源代码摘录:  ftpClient = new FtpClient(); //实例化FtpClient对象  String serverAddr=jtfServer.getText(); //得到服务器地址  String user=jtfUser.getText(); //得到用户名  String pass=...

    java源码包2

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。... 部分源代码摘录:  ftpClient = new FtpClient(); //实例化FtpClient对象  String serverAddr=jtfServer.getText(); //得到服务器...

    java源码包3

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。... 部分源代码摘录:  ftpClient = new FtpClient(); //实例化FtpClient对象  String serverAddr=jtfServer.getText(); //得到服务器...

    java源码包4

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。... 部分源代码摘录:  ftpClient = new FtpClient(); //实例化FtpClient对象  String serverAddr=jtfServer.getText(); //得到服务器...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    图片到图片装载器、绘制火焰效果的X坐标,Y坐标、得到X坐标,Y坐标值、绘制火焰效果Image…… Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT ...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    图片到图片装载器、绘制火焰效果的X坐标,Y坐标、得到X坐标,Y坐标值、绘制火焰效果Image…… Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT ...

Global site tag (gtag.js) - Google Analytics