J2ME写了有段时间了,就我自己掌握的一点机型适配经验和大家分享下:
1. Canvas类的getHeight(),getWidth() 问题
这两个方法在很多MOTO和三星手机上 都不能及时返回屏幕的高度和宽度,返回的数据可能不是真正的屏幕高度和宽度,从而导致画面显示的混乱。
【解决方案】:通常是用一个静态变量保存屏幕高度和宽度,在闪屏进入时获取一次屏幕高度和宽度赋给变量,然后在线程里休眠一段时间,在线程结束时再获取一次赋值给变量,后面的所有画面就引用这个静态变量的值,不要再用及时获取getHeight(),getWidth() 值;
2. jad文件问题导致软件安装失败
在有的MOTO手机上安装软件,会发生软件错误,从而导致安装失败。抛开软件本身BUG的问题,其实还有一个地方也是导致安装失败的原因,就是在打包时,你的jad文件.
例如这个jad文件有可能就会导致安装失败:
MIDlet-Jar-URL: XXBook.jar
MIDlet-Name: 潇湘书院-官方版
MIDlet-Vendor: 上海世秋
MIDlet-Version: 1.0.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-2.0
MIDlet-1: 潇湘书院,/icon.png,GameMIDlet
就是MIDlet-Vendor这里,后面的中文名可能导致安装失败
【解决方案】:MIDlet-Vendor:后面最好是英文的公司信息,其他项中文问题暂未发现。
3. 图片显示不了
在有的MOTO和三星手机上莫名其妙的显示不了图片,这个问题其实也是手机支持的问题,有的手机不支持图片alpha的显示,也就是有透明度的图片显示。
【解决方案】:将图片换成不透明的图片
暂时发现这么多,以后有的话再补充。
本文csdn原创,转载请注明出处。谢谢!