J2ME手机游戏开发日记 |
| 作者:未知 来源:转载 发布时间:2005-8-2 9:43:35 |
|
J2ME新手,做了一个游戏的项目,其中有些体会,觉得有些东西还是可以拿出来和大家分享。说错了还请包涵。 开发环境: windows2000+JBuilder X+semc_j2me_sdk_2_1_4_beta 从来没有接触过这个方面,因为小组一个项目要开始学J2ME,看了两天的书,发现其实JDK还是很简单的。总共也就那几个类。只是如果要考虑到资源和性能的最佳优化的话,算法和数据结构的要求比较高。 先说环境的搭建: 1、windows2000(这个不用说了) 2、JBuilder X(其他版本的JBuilder其实应该也没问题,只是我机子只有512,跑9或者2005的话有点郁闷) 3、因为是针对索爱的K700C开发的项目,所以JDK使用索爱的JDK 4、JBuilder中使用手机的JDK,步骤为Tools-Configure JDKs-Add 开发J2ME的话首先了解J2ME的结构层次,看了很多介绍性的文档顺序也大概都是这样子,网上的这方面的介绍浩如烟海,我在此也不赘述了,只是说说我的理解吧。 J2ME的核心是Configuration(CLDC、CDC),在这之上是Profile(MIDP),而我们的手机开发也大部分是在Profile上,也就是说CLDC+MIDP。 如果你要详细了解J2ME一路发展的历史,可以下载JSR规范读读,地址是http://jcp.org 第一天的工作: 有点乱,因为也是刚刚接触这个东东,一点实际经验都没有(java也只是看的零零碎碎的)。拿着本书在实验室泡了整整一天,大概了解了一下程序的基本结构。(强烈推荐sun出版的《J2ME无线设备程序设计》第二版,看得非常之痛快)。 程序中继承了MIDlet类的类可以理解为程序的入口。相当于win32中的winmain,运行的话都是从这个开始。 MIDlet的结构为 public class GameMIDlet extends MIDlet { public GameMIDlet() {} //构造函数,参数必须为空 public void startApp() //程序开始(或者被系统中断之后再回到程序) public void pauseApp() //程序暂停(处理一些暂停的清理工作,但是要注意系统遇到来电或者此类的事件时并非是将程序暂停,而是整个挂起,正常后又开始执行startAPP()) public void destroyApp(boolean con) //销毁工作。} 今天就写这么多了,明天说一下displayable和Graphics吧。另外也说一下大概的J2ME手机游戏的结构。 附:简单的MIDlet import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class HelloMIDlet extends MIDlet implements CommandListener { private Display display; private Command exitCommand; private TextBox text; public HelloMIDlet() { display = Display.getDisplay(this); exitCommand = new Command("离开", Command.BACK, 1); text = new TextBox("Hello App", "Welcome!", 256, 0); text.addCommand(exitCommand); text.setCommandListener(this); } public void startApp() { display.setCurrent(text); } public void pauseApp() {} public void destroyApp(boolean unconditional) {} public void commandAction(Command c, Displayable s) { if (c == exitCommand) { destroyApp(false); notifyDestroyed(); } } |
| [] [返回上一页] [打 印] |
|
文章评论 |
