Netbeans 6.0 CLDC/MIDP开发快速入门指南(二)

来源:互联网 发布:姜文与李安 知乎 编辑:程序博客网 时间:2024/05/29 08:28
本文档提供了使用NetBeans IDE 6.0创建Java™平台、Micro Edition (Java™ ME平台)Mobile Information Device Profile (MIDP)应用程序的基本指南。
本文档旨在帮助您尽快入门。
接下来的教程将会介绍这个新项目系统的基本操作步骤。我们会向您介绍两种方法来建立名为“MyHello”的Java ME MIDP项目,它会在设备仿真器上显示“Make my day”的文本。我们还简单介绍了CLDC/MIDP开发的其他移动性功能。

使用Source Editor创建MIDP应用程序

如果使用Source Code Editor,您需要手动创建MIDlet的代码。在Source Code Editor中创建代码可以使您在编辑代码时获得更大的灵活性,同时您还能插入预处理程序代码块。现在我们用New ProjectNew File向导创建同一个应用程序,并用Source Editor完成代码。

创建一个新的Java Me MIDP项目

1选择File > New Project (Ctrl+Shift+N)。在Categories下选择Mobility。在Projects中选择MIDP应用程序并单击Next

2Project Name字段中输入MyHelloMIDlet(注意MID用大写字母)。可以把Project Location更改到系统中的任何目录。在本教程中,我们把这个目录称为$PROJECTHOME

3选中Set as Main Project复选框并取消选中Create Hello MIDlet复选框。单击Next

4J2Me Wireless Toolkit选择为目标平台。

5展开Configuration templates provided by installed CLDC platformsJ2ME Wireless Toolkit 2.2文件夹。选中每个配置旁边的方框,IDE会自动为每个列出的模板创建一个新的项目配置。

6 单击FinishIDE创建了$PROJECTHOME/MyHelloMIDlet项目文件夹。这个项目文件夹包含了所有的资源和项目元数据,例如项目Ant脚本。

7Explorer窗口中右键单击MyHelloMIDlet节点,选择NewMIDlet

8输入HelloMIDlet作为MIDlet名称(注意,MID用大写字母)。单击FinishHelloMIDlet.java文件就创建好了。

9双击HelloMIDlet.java文件以显示编辑器中的源代码。

10Source Editor中单击并将

public class HelloMIDlet extends MIDlet

更改为

public class HelloMIDlet
extends MIDlet implements javax.microedition.lcdui.CommandListener

{

11. startApp()方法前添加以下文本:

public HelloMIDlet() {
}private void initialize() {  javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_helloTextBox());}
public void commandAction(javax.microedition.lcdui.Command command, javax.microedition.lcdui.Displayable
displayable) {   if (displayable == helloTextBox) {      if (command == exitCommand) {         javax.microedition.lcdui.Display.getDisplay(this).setCurrent(null);         destroyApp(true);         notifyDestroyed();      }   }
}
private javax.microedition.lcdui.TextBox get_helloTextBox() {   if (helloTextBox == null) {       helloTextBox = new javax.microedition.lcdui.TextBox(null, "Test String",120, 0x0);       helloTextBox.addCommand(get_exitCommand());       helloTextBox.setCommandListener(this);   }   return helloTextBox;}
private javax.microedition.lcdui.Command get_exitCommand() {   if (exitCommand == null) {       exitCommand = new javax.microedition.lcdui.Command("Exit", javax.microedition.lcdui.Command.EXIT,
1);   }   return exitCommand;}
javax.microedition.lcdui.TextBox helloTextBox;javax.microedition.lcdui.Command exitCommand;
 

12starApp()方法中添加一行initialize(),如下所示:

  public void startApp() {
initialize();
}

编辑Java源代码

现在为MIDlet添加一些显示的文本。

1get_helloTextBox()方法中,用所选择的文本来替换“test string”代码,比如“Make my day”。

编译并运行项目

1Run菜单中选择Run > Run Main Project (F6)。在Output窗口中完成项目编译过程。注意在执行之前构建HelloMIDlet.java文件。设备仿真器会打开以显示执行的MIDlet的结果。默认的设备仿真器是DefaultColorPhone

2. 在设备仿真器窗口中,单击Launch命令下方的按钮。设备仿真器会启动MIDlet并显示您在源代码中输入的文本。

3.单击Exit下的按钮关闭MIDlet。然后单击设备右上角的按钮来关闭仿真器窗口。

更改仿真器平台

因为仿真器平台是移动电话生产商提供的,所以开发人员可以在编码、调试和测试应用程序时可以模拟特定移动设备的行为。NetBeans Mobility Pack中包括J2ME Wireless Toolkit,并支持很多其他软件开发工具包(SDK),可以从NokiaSony EricssonMotorola等提供商网站上下载它们。

更改默认仿真器设备

1. MyHello Project节点上右键单击,选择Properties。在Properties对话框中选择Platform节点。可以在这里更改默认配置的设备。

2. 单击Device下拉列表,选择QwertyDevice。单击OK

3. 重新运行应用程序,应用程序会在QwertyDevice仿真器中运行。

更改项目配置

已经在New Project向导中使用模板创建了几个项目配置。现在您可以用主工具栏中的Configuration下拉菜单快速更改项目配置。

添加新的仿真器平台

1. 从主工具栏中选择Tools Java Platforms

2. Java Platform Manager对话框中单击Add Platform按钮。

3. Select Platform Type页面中,选择Java ME MIDP Edition Platform Emulator。单击Next。在Platforms页面中,IDE会搜索所有可用的Jave ME 平台并在窗口中列出。将验证那些与统一仿真器接口(UEI)标准相兼容的平台,并在平台名称旁的复选框中出现选中标志。那些与UEI标准不兼容的平台,或是由于其他原因不能安装的平台,用红色列出。向导还标识了已经安装了哪些平台。注意:您可以单击Back按钮选择Custom Java Mirco Edition Platform Emulator来安装与UEI不兼容的平台。

4. Platforms页中,选中要安装的任何平台仿真器旁的复选框。检测到平台后会自动安装。单击Finish。然后单击Close

5. 选择File > "MyHello" Properties

6. 选择Platform,然后从Emulator Platform下拉菜单中选择新仿真器的名字(如J2ME Wireless Toolkit 2.2)。

使用配置

可以使用配置为项目创建多组分发JARJava Application DescriptorJAD)文件夹。这使您能够创建一组源代码,并为要编程的每个移动设备定制这些源代码。

添加配置

1.右键单击MyHello Project节点,然后选择Properties。在Properties对话框中从Project Configuration下拉列表中选择Add Configuration。这将打开Add Configuration对话框。

2. Configuration Name字段中为配置输入名称。该名称应该标识目标平台,在该平台上将部署为此配置创建的 JAR/JAD。例如,输入 BlackWhiteDisplay,然后单击OK。至此,就创建了一个新的配置。

3. 也可以通过单击Properties对话框中的Manage Configurations按钮添加配置。这将打开 Project Configuration Manager对话框,该对话框中包括添加、移除或复制配置的选项。

定制配置

可以按照需要向项目中添加任意数量的配置。然后,可以在已添加的每个配置的Project Properties对话框中修改设置。

1.右键单击MyHello Project节点,然后选择Properties。在Properties对话框中,选择Platform节点。

2.Properties对话框顶部的配置组合框中选择BlackWhiteDisplay配置。

3.Platform对话框中的所有组件都被禁用。这是因为此配置当前采用的值是此面板的默认配置使用的值。取消选中面板顶部的“DefaultConfiguration”中的Use Values选项。现在可以编辑此面板上的所有组件。

4.Device选项更改为DefaultGrayPhone

5.切换Properties对话框顶部的Project Configuration对话框,并观察Device 选项随当前选中的配置的变化而变化的情况。此定制配置的方法用于对话框中的每个面板(除了常规面板)。单击OK保存配置更改,然后退出Properties 对话框。

创建性能

性能是项目配置的一个特定属性。它可以是一种物理属性,比如屏幕尺寸或配置所支持的APIJSR。您可以创建一种新性能并将其与一个或多个项目配置关联。然后可以使用预处理程序代码块将特定代码与性能相关联。如果以后需要添加或移除配置,则不必浏览所有的代码以及将配置与每个代码块相关联。相反,只需将配置与性能相关联。然后配置自动关联到与性能关联的任何代码块。

1.右键单击MyHello项目节点,然后选择Properties

2.Category菜单树中选择Abilities页。

3.Project Configuration下拉菜单中选择一个配置。这就是将要与性能相关联的配置。

4.如有必要,取消选中“DefaultConfiguration”复选框中的Use

Values

5.单击Add按钮。这将打开Add Ability对话框。

6.New Ability对话框中,为性能输入一个名称,或从下拉菜单中选择一个性能。可以选择为该性能输入一个值。单击Ok,关闭New Ability对话框。现在性能已经与选中的项目配置相关联了。

可以通过从Project Configuration菜单中选择一个不同的配置并单击Add按钮将性能与其他的配置相关联。

添加特定于配置的预处理程序代码

预处理程序块使您能够创建、管理和跟踪特定于一个或多个项目配置或性能的代码。代码只针对您指定的配置或性能启用(或禁用)。

1.HelloMIDlet.java Editor窗口中,右键单击实例化TextBox的源代码行 ( helloTextBox = new javax.microedition.lcdui.TextBox(null, "Make my day",120, 0x0);)

2.右键单击该行,然后选择Preprocessor Blocks > Create If/Else Block。在第一个粉红色的部分,将单词“Color”添加到“Hello World”字符串后。在第二个灰色的部分,将“Gray”添加到“Make my day”字符串。

3.每当活动配置与指令值(此例中为DefaultConfiguration)匹配时,由//#if预处理程序指令标记的代码将生效。每当活动配置与预处理程序值不匹配时,将使用由//#else预处理程序指令标记的代码。换句话说,每当活动平台是“DefaultConfiguration”时,仿真器显示“Make my day Color”,如果活动平台是任何其他仿真器平台,则显示“Hello World Gray”。用//#endif预处理程序指令结束预处理程序块。

您可以用不同的仿真器装置运行MIDlet来检验预运行程序的代码,如“修改仿真器平台”中所描述的。

运行配置

配置可以单独或同时建立或运行。

1.右键单击MyHelloMIDlet Project节点,然后选择Run

2.使用工具栏中的配置组合框把配置修改成BlackWhiteDisplay,再次选择Run

3. 会出现彩色和灰色两个仿真器,灰色仿真器“Make my day Gray”,彩色仿真器显示“Make my day Color”。

* 右键单击项目并选择Batch Build来同时构建多个配置。在打开的对话框中,选中要构建的每个配置旁边的方框。.

* 要动态测设设备,右键单击项目并选择Run With。在打开的对话框中,选择要运行的仿真器平台和装备。

将移动应用程序连接到Web服务

IDE允许创建客户端MIDlet,可以通过直接的“两层”体系架构连接到Web服务,或通过“三层”体系结构通过中间件Web应用程序连接到Web服务。

IDE提供了用于创建连接类的两个向导:

l       如果要使用JSR-172 Web Services规范创建到Web服务的“两层”连接,则使用Java ME Web Service Client向导。此向导创建存根(客户端代理),还可以选择创建调用 Web 服务的示例客户端MIDlet。必须具有支持JSR-172规范的设备或仿真器平台,才能使用此向导。

l       如果设备不支持JSR-172 Web Services规范,则使用Mobile Client to Web Application Generator创建到Web服务的“三层”连接。此向导生成连接到包括Web服务客户端的Web应用程序的servlet。在使用Mobile Client to Web Application Generator之前,必须具有包括Web服务客户端的Web项目。

创建Java ME Web ServicesJSR-172)客户端

1. New File 向导中,在Categories下选择MIDP。在文件类型列表中选择Java ME Web Service Client。单击Next

2. 标识要添加到项目中的 Web 服务的 WSDL 文件位置。

如果WSDL服务在Web上:

* 选择Running Web Service,并为 WSDL 文件输入 URL,为检索到的 WSDL 输入本地文件名。

*如果您位于防火墙后面,则单击Proxy Settings指定适当的 HTTP 主机和端口。

*单击Retrieve WSDL获得WDSL文件的本地副本。IDE下载WSDL文件。

如果您的环境中具有WSDL文件:

*从系统中选择WSDL文件并输入文件名。

* IDE检索WSDL文件,页面上的其他字段植入从WSDL文件名中获得的默认名称。

3.按FinishIDE创建打开的设置文件并生成客户端存根。在主窗口中,可以看到可以选择的Exported ServicesClient InformationClient Options的列表。

*  极少数情况下,可能需要将CLDC 1.1类型转换为CLDC 1.0类型,这意味着FloatDouble类型转换为String变量。要进行转换,选中设置文件上的复选框Convert floating point to String并单击Generate Stubs按钮。

*  如果位于防火墙后面,则没有可用于NetBeansHTTPS代理的公共设置。通过从主菜单中选择Tools>Options,可以更改NetBeans代理设置。但是,这些设置不传播到仿真器。通过选择Tools > Java Platforms,可以设置Wireless Toolkit的代理。在Platforms下,选择Wireelss Toolkit,然后选择Tools & Extensions选项卡。单击Open Preferences按钮,然后选择Network Configuration选项卡。更改其他仿真器的代理是相似的,但可能随供应商不同而有所不同。

*  生成的文件不应编辑。对文件的任何更改会在重新生成这些文件时丢失。

使用Game Designer创建游戏

Visual Mobile Designer现在支持MIDP2.0 Gaming API VMD中,可以将瓷砖图层排列到场景中,并用动画精灵填充游戏。

开始之前,将要用于场景和精灵的所有图片保存到项目的 src 目录中。然后按以下步骤继续:

1.取消选中Create Hello MIDlet选项,创建新MIDP项目。右键单击项目并选择New File Categories中选择MIDP File Types中选择Visual Game Design。单击Next

2.为新类型输入一个名称。单击Finish

3.将打开Game Builder Design Component屏幕。

4.单击Create Scene。场景是游戏的级别。在Game Designer窗口中,一个空的场景将打开。

5.要创建瓷砖图层(场景环境),单击窗口右上角的Create Tiled Layer按钮。注意,可以使用IDE附带的示例图片。要获得示例图片,单击Import sample images按钮。

6.在弹出的对话框中,输入图层的名称,调整瓷砖的大小以匹配要编程的设备。然后单击OK。创建新瓷砖图层之后,拖放网格上的瓷砖以创建游戏的级别。

7.可以通过从下拉菜单中选择Sprites来创建游戏的精灵,然后从IDE底部的图片窗口中拖动图片。可以使用游戏生成器动画化精灵和瓷砖图层。游戏生成器将精灵当作动画序列,您可以同时编辑和动画化多个精灵。

请您给与反馈意见

原创粉丝点击