西门子C65开发手札
来源:互联网 发布:淘宝上怎么买烟 编辑:程序博客网 时间:2024/06/11 04:44
自己给西门子C65也写过一段时间程序,其中也发现很莫名其妙的问题,找遍N个网站,才发现开发西门子手机软件的实在是少得可怜……唉,也只能怨西门子不争气吧!
在这里写一些自己开发中遇到的问题,也算是给西机的开发FANS做些参考吧!
1.不支持GameCanvas.getState()
虽然西门子C65号称支持CLDC1.1和MIDP2.0,其实是没有完全实现的。其中GameCanvas.getState()就是一例子,如果在编程中采用getState()方法,将会出现意想不到的结果,因为无论如何,getState()返回的永远是0值,而不是键位值。
可以用下面这个类做测试:
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.*;
public class myGameCanvas extends GameCanvas
{
Graphics g=getGraphics();
public myGameCanvas()
{
super(false);
}
protected void keyPressed(int keyCode)
{
int keyState=this.getKeyStates();
if(keyState!=0)
{
g.setColor(0,0,0);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(255,255,0);
g.drawString("keyCode"+Integer.toString(keyCode),20,20,0);
g.drawString("keyState "+Integer.toString(keyState),20,40,0);
}
else
{
g.setColor(0,0,0);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(255,255,0);
g.drawString("keyCode "+Integer.toString(keyCode),20,20,0);
g.drawString("keyState "+Integer.toString(keyState),20,40,0);
}
this.setFullScreenMode(true);
flushGraphics();
}
}
2.文件名大小写
西门子的实体机子对文件名区分大小写,比如"a.PNG"和"a.png"是不同的文件,但在windows的模拟器下是同一个文件。这会造成一个结果就是,明明在模拟器中顺利读出了图片,但在实机中就是抛出异常!
3.模拟器不支持media.*
这应该是模拟器的不完善,凡是涉及到media.*的都会提示“JAVA ERRO”!但是在实体机上一切运行正常。所以打算在软件中播放声音的朋友,还是要到实体机中去尝试,说不定很多问题就迎刃而解。
例如,此段代码在模拟器中出错,但在实体机中正常通过:
try
{
InputStream in = getClass().getResourceAsStream("/res/music"+stageNum+".mid");
player = Manager.createPlayer(in,"audio/midi");
player.setLoopCount(4);
player.start();
}
catch(IOException e){}
catch(MediaException e){}
4.模拟器不支持RMS
不知道为什么,模拟器一直不支持RMS,总之解决方法也只能用WTK自带的模拟器测试是否正常,或是直接拷贝到手机上测试了。
- 西门子C65开发手札
- 十分钟清除西门子C65手机密码
- 游戏引擎开发手札
- 西门子TC35模块开发知识
- 西门子GPRS模块开发详解
- 西门子
- 西门子Softnet驱动的成功开发
- 西门子Softnet驱动的成功开发
- 西门子Softnet驱动的成功开发
- 【开发手札】关于开发的一些个人心得见解
- Oracle Forms开发手札:特殊的默认值 $$variables$$
- 【开发手札】关于折腾esp8266的一些体会
- 西门子股份公司
- 西门子软件
- 培训手札
- 菜鸟手札
- 兼容手札
- jquery手札
- PPMM图片I
- 关于Ajaxian JSF的设计原则
- 如何在Resin中使用OJB
- Wicket用户手册:能够处理用户输入的HelloWorld
- 用例建模指引
- 西门子C65开发手札
- Zend进军中国:PHP在中国的机遇
- read-Atleap-11-主业务分析-NewsItem类-Hibernate继承关系实施案例
- MFC类中获得其它类指针
- Eclipse秘籍和Jbuilder快捷键
- eclipse快捷键大全
- 成长后的烦恼
- 字符集编码转换轻松实现
- (翻译)停止使用糟糕的MBO