存档

文章标签 ‘j2me’

J2ME中RMS的使用解析

2010年10月20日
34 views 没有评论

在J2ME中,RMS作为唯一的永久性存储工具,其重要性是不言而喻的。但是很多刚刚开始学习J2ME的新人总是抱怨在这方面的资料很少,或者是针对性不强。因此,我想把自己在这方面的一些学习心得和大家交流一下。
RMS即Record Manager System,在手机应用中常常作为得分记录、游戏信息存储等的工具使用。
RMS的使用可以分为两个部分:一、单一记录的构造;二、RecordStore的使用和操作。下面就这两方面进行详细说明。
一、单一记录的构造。我们在存储记录时可能需要记录很多相似的条目,在这里我们可以把这种结构看成数据库,我们在这一步就是要构造数据库中的一行,即单一记录的构造。程序的源码如下:

阅读全文…

j2me ,

j2me经验总结之URLEncoding

2010年8月25日
72 views 没有评论

URLEncoding是用于解决链接字符串中包含中文字符的一种转换编码。各种编程环境下几乎带有它的库函数。

不过,J2ME除外。

好在JAVA的源代码中带有这个类,我们把它拷贝到J2ME环境下编译到我们的应用当中就可以了。

该文件位于JDK的目录下src.zip文件中,名叫URLEncoder.java。

阅读全文…

j2me

手机游戏动作编辑器MotionWelder–编写程序

2010年7月8日
550 views 没有评论

开发环境:Eclipse+EclipseMe (Eclipse3.4版本以上使用EclipseMe时在添加第三方库常常会出现classnotfound异常,可使用mtj代替EclipseME,或使用低一些的Eclipse版本)
1、新建J2ME工程,导入MotionWelder的J2ME库(在该程序下载包里J2ME 的lib目录里的motionwelder.jar)
       右键工程–>Build Path –>Add external archives… —>选择motionwelder.jar打开,即可导入完毕。
2、把导出的动作数据文件拷到工程的资源目录,导入动作数据文件
/*
spriteName 动作数据文件
splitImageClips 内存加载图片的方式,如果为false则加载完整的图片(图片没有切片),true则加载切片的图片
imageloader  加载动作所需图片的类
*/
MSpriteData animationData = MSpriteLoader.loadMSprite(java.lang.String spriteName, boolean splitImageClips, MSpriteImageLoader imageloader)
3、加载动作图片
interface MSpriteImageLoader:
splitImageClips = false  - 加载完整的图片
           Image[]  loadImage(spriteName,imageId,orientationUsedInStudio);

阅读全文…

j2me, 游戏 , ,

J2ME平台PNG图片的压缩与解压缩

2010年4月2日
191 views 没有评论
在J2ME平台上PNG图片格式几乎成为了标准,无数台手持设备上运行的J2ME程序几乎都选用PNG来显示图像,包括大量的手机游戏以及手机应用,所以对PNG文件格式的了解,可以更有效的减少Jar Size,保护自有知识产权。

PNG文件格式:
PNG文件格式分为PNG-24和PNG-8,其最大的区别是PNG-24是用24位来保存一个像素值,是真彩色,而PNG-8是用8位索引值来在 调色盘中索引一个颜色,因为一个索引值的最大上限为2的8次方既128,故调色盘中颜色数最多为128种,所以该文件格式又被叫做PNG-8 128仿色。
PNG-24因为其图片容量过大,而且在Nokia和Moto等某些机型上创建图片失败和显示不正确等异常时有发生,有时还会严重拖慢显示速度,故并不常 用,CoCoMo认为这些异常和平台底层的图像解压不无关系。不过该格式最大的优点是可以保存Alpha通道,同事也曾有过利用该图片格式实现Alpha 混合的先例,想来随着技术的发展,手机硬件平台的提升,Alpha混合一定会被广泛的应用,到那时该格式的最大优势才会真正发挥。
PNG-8文件是目前广泛应用的PNG图像格式,其主要有六大块组成:
1.文件头
2.IHDR块
3.PLTE块
4.tRNS块
5.IDAT块
6.文件尾
这六大块按顺序排列,也就是说IDAT块永远是在PLTE块之后,期间也会有许多其他的区块用来描述信息,例如图像的最后修改时间是多少,图像的创建者是谁等,不过这些区块的信息对我们来说都是可有可无的描述信息,故压缩时一般先向这些区块开刀。

阅读全文…

j2me , ,

应用双缓冲技术解决画面闪烁的问题

2010年3月5日
50 views 没有评论

有些时候我们可能在J2ME中遇到画面闪烁的问题,这时候我们可以应用双缓冲的技术来解决,不过由于现在越来越多的手机自身就支持双缓冲了。所以这里只做个简单的介绍。

我写了程序本来想在NOkia 6108上比较用和不用的区别,结果这个手机自己就支持双缓冲,所以根本没有比较出来。不过了解这个技术还是有必要的,所以我决定还是写出来。双缓冲本来是在开发PC应用程序的时候遇到的。在MIDP开发中同样存在,当你在屏幕上进行原始写画的时候,如果很复杂的话,用户会发现界面在闪烁。因此你可以这样做,首先在另一个图片上进行paint()得操作,当完成了以后就把它copy到屏幕上,由于通常copy得时候速度很快就不会出现闪烁了。这个技术就是双缓冲。

阅读全文…

j2me , ,

  • 粤ICP备09032914号