做一个程序时发现不了这个问题,但是拿到PC上去批量制作时才发现因为RMS这个东西涉及BUG比较多.经过摸索,终于有了解决方案.
MANIFEST.MF 文件:
Manifest-Version: 1.0
MIDlet-Vendor: china
MIDlet-Version: 2.5.0
MicroEdition-Configuration: CLDC-1.0
MIDlet-1: 中文,logo.png,Read
MIDlet-Icon: /logo.png
MIDlet-Name: 中文
MicroEdition-Profile: MIDP-2.0
里有一些属性,但是用户关心的也就是关于名称的字段,也就是以上写着"中文"的那两个.
其中,"MIDlet-1"的名称是多数手机在安装完了之前程序列表里所看到的名称,
"MIDlet-Name"名称是在程序管理里或安装时提示的名称,我们中国人当然喜欢用汉字,所以这两个一起改.
改成中文之后还有更大的问题要解决,多数手机上的JVM不支持中文!
如果我们要依据中文就得处理一下.
有个好办法,鉴于针对JAVA的Unicode有特殊的转换工具,我们就可以从这下手.
这样一来就可以将我们的汉字转换成类似于"%u4eba"这类东西了,而且还是中文的哦.
接下来还得解决一个问题,要是中文字数长了那这个字符串就变得好长了,而RMS的名字是有限的32位Unicode字符,OK,用下面的方法优化一下:
这么一来,过长的字符也就搞定啦,嘻嘻!
经过以上的处理后,RMS文件是不会被共享了,当时我以为是没事了.可是后来我发现,我错了.竟然还有一个问题,删除的时候会将同类型程序的RMS一齐删除了!
后经研究得知:"MIDlet-Vendor" 这个也是很关键的!
RMS的创建是根据"MIDlet-Name"及"MIDlet-Vendor"这两个决定的,这两个要是不同就会新建一个RMS文件.
如果能根据一个程序创建一个文件,那我们的程序不就不存在共享这类问题啦!
所以,在PC上批量处理时就得改动"MIDlet-Vendor","MIDlet-1"和"MIDlet-Name"这三项,哈哈.OVER!