J2ME开发及JBuilder工具的应用-开发者网络-J2ME-天极Yesky2

来源:百度文库 编辑:神马文学网 时间:2024/04/29 02:03:06
J2ME开发及JBuilder工具的应用
2004-02-03 15:16 作者: 出处: 论坛 责任编辑:方舟
2. MIDP应用程序开发
这里讨论的J2ME无线应用开发主要是基于CLDC/MIDP的开发,其应用程序可运行于移植有KVM的手机、PDA等,这类设备由MIDP定义,即移动信息设备(MID),可看作一垂直应用市场。
可在PC(Windows、UNIX或Linux平台)上开发MIDP应用程序,编译成类文件形式,下载到目标设备上,经过类文件的验证(验证是否有不符合KVM规范的方法调用等)后即可解释执行。
生成的.java文件至少有一个是扩展了javax.microedition.midlet.MIDlet类的子类,并且实现几个规定的接口,比如下面的一个MIDlet程序 :
 
import javax.microedition.midlet.*; //应用程序生命周期,和J2SE一样,包java.lang.*是默认加载的
import javax.microedition.lcdui.*; //MIDP用户界面
public class FirstMIDlet extends MIDlet implements CommandListener {
private Display display; // 引用MIDlet的Display 对象
private TextBox textBox; // Textbox 显示一条消息
private Command cmdExit; // 设定按钮用于退出MIDlet
public FirstMIDlet() { // MIDlet构造程序
display = Display.getDisplay(this);
cmdExit = new Command("Exit", Command.SCREEN, 1);
textBox = new TextBox("My First MIDlet", "Hello, J2ME!", 50, 0);
textBox.addCommand(cmdExit);
textBox.setCommandListener(this);
}
public void startApp() { // 必须要实现的接口,被应用管理软件调用来启动MIDlet
display.setCurrent(textBox);
}
public void pauseApp() { } // 必须要实现的接口
public void destroyApp(boolean unconditional) { } //必须要实现的接口
public void commandAction(Command c, Displayable d) { //检查一下是否选择了退出命令
if (c == cmdExit) {
destroyApp(false);
notifyDestroyed();
}
}
}
这是最简单且功能完整的MIDlet应用程序,其中接口startApp、pauseApp、destroyApp是必须要实现的,应用程序管理器(JAM)通过这些接口调用和控制应用程序,与Applet类似。除这个主类外还可以有其它辅助类,其要求和J2SE一致。
然后使用javac工具编译,javac工具来自J2SE,至少JDK 1.3版,编译时应该使用参数-bootclasspath并指向MIDP类库。之后使用preverify工具预验证,以保证生成的.class文件符合CLDC要求,这一步为每个类文件添加堆栈映射(stackmap,此属性为CLDC新定义)属性,增加类文件大小约5%。
此时可以用midp工具(来自MIDP实现的可执行文件)模拟运行,之后即可打包,需要编写一清单文件(清单文件参考CLDC/MIDP规范),用jar工具(来自J2SE)把预验证后的类文件、资源文件、清单文件打包。
要发布应用程序还需要编写一描述文件(JAD),JAD的要求同清单文件一致,可以自定义参数供应用程序调用。其中一个参数MIDlet-Jar-URL以URL方式指向JAR文件,移动终端设备通过JAM连接网络获取JAD,下载MIDlet-Jar-URL指向的JAR到设备中,通常JAM要先判断JAD与清单文件是否一致,应用程序是否有效,然后才决定下载。
运行时执行环境、JAR包、JAD文件和应用程序生命周期,这些要素构成MIDlet套件,由JAM管理,每个MIDlet套件可包含一个或多个MIDlet。
上面是一个MIDP应用程序开发的关键点,具体的开发方法及开发工具大致分为如下几种:
Ⅰ. 基本开发工具
最基本的开发方式是下载SUN提供的CLDC/MIDP参考实现及源代码,可根据需求编译生成一个CLDC/MIDP实现,并移植到设备上。配置好开发环境(CLDC/MIDP实现、JDK1.3)后即可采用上述方法和工具进行开发,多采用命令行方式,这是最原始的方法。
Ⅱ. J2MEWTK开发工具
这是SUN提供的便捷开发工具,用于Windows环境,同样需要先安装JDK1.3。源程序仍需要使用常规的文本编辑器,把编辑好的源文件及资源文件按一定要求放在规定目录下,J2MEWTK所提供的是菜单或按钮方式的命令。J2MEWTK中有相应的编译(和预验证一个步骤)、打包、模拟运行的菜单(或按钮),以及其它辅助工具。
Ⅲ. IDE工具
可以使用Forte For Java、JBuilder等IDE工具和J2MEWTK集成使用,它们除了有J2MEWTK的功能外,就是提供有可视化的开发工具。
共3页。971238