j2me打包安装需要注意的地方

一、在J2ME程序开发完成以后,需要将程序打包成jad和jar文件,这个操作可以使用IDE提供的向导或者是WTK中的菜单等方式来完成,为了保证你的程序可以顺利的在手机中运行,需要注意如下一些小内容:
  1、 注意资源文件的名称,例如图片文件,是否和代码中的文件名大小写一致。因为Windows操作系统对于文件名是不区分大小写的,而手机严格区分,不然就会出现空指针异常。
  2、 如果在设置中包含了中文,例如程序的名称等,一般使用打包工具来生成,而不要自己手动去修改jad文件。
  3、 检查jar文件中是否包含一些不需要的文件,例如Windows操作系统下的隐藏文件Thumbs.db文件,这样将增大jar文件的大小。
  4、 检查是否混淆。一般混淆程序只是增加反编译的难度,但是更大的作用是减小jar文件的尺寸。混淆度越高,jar包越小。

二、首先,只要确认是可安装的MOTO游戏(别人安装能成功),那总是可以通过MIDWAY来安装的,如果出现问题(主要是报无效文件),我们一遍一遍来排除故障。

1、乱码
解压JAR包,查看其中META-INF目录下的MANIFEST.MF文件里面是否有乱码(用记事本就可以打开),如果有,则将其逐一修改为非乱码。产生乱码的地方主要是中文的游戏名、介绍开发商和游戏价格。就是以下4行:

游戏名:(红色标记的就是游戏名,改为自己想要的名字吧,注意2处保持一致)
MIDlet-Name: Adventure Island
MIDlet-1: Adventure Island, /i.png, Main

开发者:
MIDlet-Vendor: Living Mobile GmbH

游戏介绍:
MIDlet-Description: 冒险岛是一款FC移植游戏

游戏价格:
Media-Price: 免费

OK,把这上面4处的乱码全部修正就可以了!随便填什么都没有关系的!(注意标点符号用英文半角,每行的冒号和后面的文字之间有英文空格)然后另存为同名文件,选择UTF-8格式,再拖入JAR包替换原文件就可以了,重生JAD试试。

2、JAD格式有错误
JAD格式有错有2个可能,一个是JAD生成器不规范(例如生成的不是UTF-8格式的JAD文件),第二个还是MANIFEST.MF文件本身有错(箱子游戏可真麻烦呀)
JAD明显的错误包括,字符显示不完善,一串字符明显还有下文,他突然间就断掉了。例如:
MIDlet-Description: 冒险岛是一款FC移植游戏,适用于MOTO C65         (应该是C650吧??)

MIDlet-1: Adventure Island, /i.png, Ma           (Main的“in”上哪去啦??)

这个明显就是出问题。

这个时候还是手工来修 MANIFEST.MF了,方法同上

3、JAD生成器无效
还有这种事?的确有,JAD生成器的程序其实笨笨的,这个时候你去查看一下META-INF这个目录名是否皆为大写,有时候变成了Meta-inf,这个时候JAD生成器就不认了。

4、文件路径和容量一定要正确
这个不用多说了,不过从WAP上下载下来的游戏JAD路径多数不正确,重新生成一下

5、CLDC不能超出标准
MicroEdition-Configuration: CLDC-1.0
1.0是符合标准的,1.1就超出了C650的标准

6、内存不够
MIDlet-Data-Size: 1000 这个表示了至少保留1K的剩余空间,如果这个数字显示为1000000,则表示至少保留1M的剩余空间,这个时候如果剩余空间不足就会“无效文件”,把这行去掉就可以了

7、缺少必要项目
以下项目是JAD内必须具备的,其他的都是可选项,去掉也没关系。但是必选项内如果少了一项可就装不了了
Manifest-Version: 1.0
MIDlet-Name:
MIDlet-1:
MIDlet-Version:
MIDlet-Vendor:
MicroEdition-Profile:
MicroEdition-Configuration:
MIDlet-Jar-Size:
MIDlet-Jar-URL:

8、JAD和MANIFEST.MF文件内容不同
这个就是提醒我们修改了MANIFEST.MF后一定要重生JAD

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值