您的位置:首页 > 其它

j2me项目开发总结

2010-10-19 13:20 225 查看
  本人曾在大三使用java几个月,但由于临危受命,不得不接手公司上马的j2me项目。自问jcreator/eclipse使用熟练,java设计模式过关,于是开始了我的j2me之旅。

 

 

第一章  模拟器选择

   1)wtk2.5.2

   2)nokia开发包

   3) kemulator

   ...

   尽量要求使用对应公司的开发包,如nokia,不然有些全屏等,还有些特殊操作都实现不了。

 

 

第二章  开发工具选择

    1)eclipseme

       不能像netbeans那样进行预编译。不适合多个版本管理。当然可以搞多个配置,用ant编译。           

 

    2) netbeans

                2.1)j2me工程

                      做简单应用推荐。注意gbk和unicode编码,特别是两边工程要整合的时候,一定要先确定两边的编码方式,不然会乱码。

                      大家可以注意一下j2me里边打包和混淆操作的参数,带“--”那些,关键时刻可能用得到。

 

                2.2)j2se工程+ kemulator

                       kemulator是最强大的模拟器,第一可以随便改变屏幕大小,第二可以查看到程序中占有内存大小(有些版本才有)。

                       第三单步调试速度快。 这是eclipseme和wtk2.5.2远远不能及的, 第四调用nokia等其他公司开发包也非常方便。

                       游戏开发多用此方式,引用库很方便,修改编译脚步也很方便。但可能遇到一类大难题,就是datainputstream和dataoutputstream这两个类(RMS和网络操作都会用到), 很可能引用到j2se的库,这时候主要了,datainputstream变量不能调用close操作,写数据要这样写 xx.write(data, sizeof(data));

 

第三章  高级ui还是低级ui

           高级ui排版问题会帮你解决,但界面做的可能不好看,也不能全屏操作。

           低级ui的话,控件可以全部直接写,如textview, table, list ,editctrl, popmenu, msgbox...等等这些都可以自己写,仿造swing进行编写。这样会很灵活,也做的比较好看。至于输入操作,可以调用高级ui的。

           有些手机的屏幕大小要自己固定死,因为 canvas的getwidth  getheight不是那么准确,特别是摩托罗拉手机。 而且摩托罗拉手机的键值跟其他手机不一样,需要调整。           

 

第四章  屏幕缓冲和图片

           一般手机做了双缓冲,所以自己没有必要自己搞双缓冲。j2me有自己createImage和setclip两个函数一般用的很多。 建议不要用透明操作,因为有些手机不支持透明,所以你拼接图片的时候,尽量用自己的类来实现。 图片可以扩大和缩小,所以资源可以做的很小。 也可以把所有图片合成一个文件来读。

 

 

第五章 屏幕会闪难题

         建议整个程序就一个canvas,其他为canvas的控制类。游戏都是这么实现的。

 

 

第六章 网络难题

         1)代理和非代理

               有些手机必须要代理,有些则不需要。建议两个都尝试。 还有网关收到的数据可能大小写不规范,这个要严重注意。

         2)写完数据之后要不要flash

              写数据之后是绝对不允许flash的,这是网络函数的bug,不然很多通信就不会成功了。

 

 

 

 

 

第七章 调试

          eclise的调试需要配置写参数,网上很多。 调试起来eclise和netbeans的j2me是贼慢的。想打手机运行的log到电脑,可以用开源的microLog。

 

第八章 后语

手机前罗万象,你手头一定要有蓝牙。国内的手机是千奇百怪,一定要认识研究,特别是有些手机虚拟机没有装好的,搞的输入的东西少了一位就真是气死人。

        如果一定要做这行,建议大家去做游戏开发,至少还有点技术含量。不然就不要做了,不然一定会气得你发疯。

        关键提示,如果发现手机老是上不了网,记得打电话给移动mm,她们会帮你自动配置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: