分享
 
 
 

移动开发谁领风骚J2ME开发工具面面观

王朝java/jsp·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

概述

目前,移动开发已经成为开发者社区最为引人注目的新技术。移动互联网蕴藏的巨大商机以及嵌入式开发的神秘色彩使得越来越多的程序员开始学习和研究移动开发技术。J2ME、Symbian、Windows Mobile、BREW是目前主流的技术平台,其中J2ME凭借其开放的特性占据了绝对的市场,成为了移动开发领域的标准。相比其他平台,J2ME的参考资料也更丰富,更适合初次涉足此领域的开发者入门。

所谓工欲善其事,必先利其器。本文主要讲述目前主流的用于开发J2ME应用程序的开发工具,包括SUN Wireless Toolkit 2.2、Netbeans IDE 4.1、Eclipse 3.1和JBuilder。通常,开发应用程序的时候都会针对具体的目标平台,比如Nokia Series60系列。假如可以把第三方的SDK集成到我们熟悉的开发工具中,必将方便调试和测试,缩短软件开发周期。文章最后讲解如何将第三方SDK集成到开发工具中。本文使用Windows xp操作系统并假设读者已经正确的安装了J2SDK 1.4.2或者更高版本。

SUN Wireless Toolkit 2.2

WTK是一系列工具的集合,包括Ktoolbar、模拟器和辅助工具,使用它们可以为移动电话或者其他嵌入式设备开发MIDP应用程序。从2.3 Beta版本之后,SUN将WTK的名称修改为SUN java Wireless Toolkit,本文使用WTK 2.2正式版。首先从http://java.sun.com 下载软件,并安装到C:\WTK22目录。Ktoolbar是整个WTK 2.2的核心组件,选择“开始”——“所有程序”——“J2ME Wireless Toolkit 2.2”——Ktoolbar。Ktoolbar的界面如图1-1所示:

图1-1 Ktoolbar运行界面

使用“打开项目”功能可以方便地运行WTK 2.2自带的Demo项目,读者可以访问C:\WTK 22\apps目录研究项目代码,对初学者来说,这是不错的学习途径。Ktoolbar也提供了“新建项目”的功能,可以新建MIDP应用程序。遗憾的是没有提供代码编辑的功能,因此很少开发者会直接使用WTK作为开发工具。本节我们不讲述如何使用WTK 2.2一步步开发MIDlet,而是介绍如何使用命令行方式开发MIDlet。之所以选择这种方式,是为了让读者清楚MIDP应用程序的开发流程,避免在下一节介绍集成开发环境的时候,只能知其然,不知其所以然。

为了能够在命令行下完成编译、预校验和打包工作,首先把J2SDK和WTK安装目录下的bin目录加入到环境变量中。

C:> SET PATH=%PATH%;C:\WTK22\bin

C:> SET PATH=%PATH%;C:\j2sdk1.4.2_03\bin

开发MIDP应用程序与Java应用程序存在一些差异,为了方便。我们首先设置一些环境变量,如下所示:

C:> SET WTK_HOME=C:\WTK22

C:> SET MIDPAPI=%WTK_HOME%\lib\midpapi20.jar

C:> SET MIDPCP=%WTK_HOME%\wtklib\kenv.zip;

%WTK_HOME%\wtklib\kvem.jar;%WTK_HOME%\wtklib\lime.jar;

%WTK_HOME%\lib\cldcapi10.jar

在WTK_HOME\apps目录下面新建一个目录命名为cmdPRoject。cmdProject将作为我们的项目目录。在cmdProject中新建如下四个子目录:

·src——存放Java源文件

·tmpclasses——编译后的class文件

·classes——经过预校验的class文件

·bin——存放JAD和jar文件

做好所有预备工作后,开始新建MIDlet。首先在src目录下创建HelloWorld.java文件。源文件内容如下所示:

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class HelloWorld extends MIDlet implements CommandListener {

private Display display;

public static final Command exitCommand = new Command("退出",Command.EXIT,1);

public HelloWorld(){}

public void startApp(){

if(display == null){

display = Display.getDisplay(this);

}

TextBox t = new TextBox("Netbeans", "出色的Java开发工具", 256, 0);

t.addCommand(exitCommand);

t.setCommandListener(this);

display.setCurrent(t);

}

public void pauseApp(){}

public void destroyApp(boolean unconditional){}

public void commandAction(Command cmd,Displayable displayable){

if(cmd == exitCommand){

destroyApp(false);

notifyDestroyed();

}

}

}

下面的命令用来编译src目录下的所有源文件并且把他们输出到预先创建好的目录tmpclasses。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有