blob: f02bba01a6d8fea507361030ed22aef1655ff169 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
-->
<html>
<head>`
<title>Java ME MIDP 开发快速入门指南 - NetBeans IDE 教程</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<link rel="stylesheet" type="text/css" href="../../../netbeans.css">
<meta name="author" content="">
</head>
<body>
<h1>Java ME MIDP 开发快速入门指南</h1>
<p>本教程将指导您完成使用 NetBeans IDE 创建 Java&trade; Platform, Micro Edition(Java&trade; ME 平台)移动信息设备配置文件 (Mobile Information Device Profile, MIDP) 应用程序的基本步骤,其目的是帮助您尽快着手开发 Mobile 应用程序。本教程引导您完成使用项目系统的一些基本步骤。我们向您介绍了两种方法来创建名为 &quot;MyHello&quot; 的 Java ME MIDP 项目,此项目在设备仿真器中显示文本 &quot;Make My Day&quot;。本教程可以帮助您做好使用其他 IDE 功能来开发 CLDC/MIDP 应用程序的准备。</p>
<!--<p class="notes"><b>注意:</b>如果使用的是 NetBeans IDE 6.8,请参阅 <a href="../../68/javame/quickstart.html">NetBeans IDE 6.8 Java ME MIDP 开发快速入门指南</a>。</p>-->
<h3>目录</h3>
<img src="../../../images_www/articles/69/netbeans-stamp-69-70-71.png" class="stamp"
alt="本页上的内容适用于 NetBeans IDE 6.9 或更高版本"
title="本页上的内容适用于 NetBeans IDE 6.9 或更高版本" />
<ul>
<li><a href="#reqs" title="教程要求">教程要求</a></li>
<li><a href="#vmd" title="在 VMD 中创建应用程序">在可视 Mobile 设计器中创建应用程序</a></li>
<li><a href="#source" title="在源代码编辑器中创建应用程序">在源代码编辑器中创建应用程序</a></li>
<li><a href="#nextsteps" title="后续步骤">后续步骤</a></li>
</ul>
<h2><a name="reqs"></a>要求</h2>
<p><b>要学完本教程,您需要具备以下软件和资源:</b></p>
<table>
<tbody>
<tr>
<th class="tblheader" scope="col">软件或资源</th>
<th class="tblheader" scope="col">要求的版本</th>
</tr>
<tr>
<td class="tbltd1"><a href="https://netbeans.org/downloads/index.html" target="_blank">带有 Java ME 的 NetBeans Beans</a></td>
<td class="tbltd1">版本 6.9 或更高版本 </td>
</tr>
<tr>
<td class="tbltd1"><a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">Java Development Kit</a> (JDK)</td>
<td class="tbltd1">版本 6 或 7 </td>
</tr>
</tbody>
</table>
<br>
<p><b class="notes">注意</b>:IDE 捆绑的仿真器根据下载的安装程序所适用的操作系统而有所不同。</p>
<ul>
<li>NetBeans 6.7 及更高版本的 Windows 发行版与 Java ME SDK 3.0 捆绑在一起。</li>
<li>NetBeans IDE 的 Linux 发行版与 Sun Java Wireless Toolkit 2.5.2 捆绑在一起。</li>
<li>NetBeans 6.9 的 MacOS X 版本与适用于 CLDC 的 Java ME SDK 3.0 捆绑在一起。</li>
</ul>
<h2><a name="vmd"></a>使用可视 Mobile 设计器创建 MIDP 应用程序</h2>
<p>NetBeans IDE 提供一个使您可以快速创建 MIDP 项目的向导。创建此项目时,可以选择在可视 Mobile 设计器 (VMD) 或源代码编辑器中开发应用程序。使用 VMD,能够以可视方式规划应用程序流并设计应用程序使用的屏幕。在设计画布上保存更改时,设计器会自动创建应用程序的代码。 </p>
<h3 class="tutorial">创建 MIDP/CLDC 应用程序 </h3>
<ol>
<li>选择 &quot;File&quot;(文件)&gt; &quot;New Project&quot;(新建项目)(Ctrl+Shift+N 组合键)。<tt></tt><tt></tt>在 &quot;Categories&quot;(类别)下,选择 &quot;Java ME&quot;。<tt></tt>在 &quot;Projects&quot;(项目)下,选择 &quot;Mobile Application&quot;(Mobile 应用程序),然后单击 &quot;Next&quot;(下一步)。<tt></tt></li>
<li>在 &quot;Project Name&quot;(项目名称)字段中输入 <code>MyHello</code>。使用缺省 &quot;Project Location&quot;(项目位置),或者将它改为系统上您要选择的目录。在本教程中,我们首选 <code>$PROJECTHOME</code> 目录。 </li>
<li>选中 &quot;Set as Main Project&quot;(设置为主项目)和 &quot;Create Hello MIDlet&quot;(创建 Hello MIDlet)复选框(两者缺省情况下均处于选中状态)。<tt></tt><tt></tt>单击 &quot;Next&quot;(下一步)。 </li>
<li>选择缺省仿真器平台,并对其余选项使用缺省设置。单击 &quot;Finish&quot;(完成)。 </li>
<!--li><a name="template"></a>Expand &quot;Configuration templates provided by
installed CLDC platforms&quot; and &quot;Sun Java Wireless Toolkit 2.52 for CLDC &quot;
folders. Check the boxes next to each of the configurations.
The IDE automatically creates a new project configuration for each template
listed.
-->
<li>IDE 将创建 <code>$PROJECTHOME/MyHello</code> 项目文件夹。此项目文件夹包含所有源代码和项目 meta 数据,例如项目的 Ant 脚本。应用程序本身显示在可视 Mobile 设计器的 &quot;Flow&quot;(流)设计窗口中。</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/newjavameproject.png" alt="IDE 中 Hello Midlet 的 &quot;Flow&quot;(流)视图" width="608" height="374"></p>
<p>注意:有关可用组件面板组件的完整说明,请参阅 <a href="http://wiki.netbeans.org/VisualMobileDesignerPalatteReference">Visual Mobile Designer Palette Reference</a>(可视 Mobile 设计器组件面板参考)。</p>
</ol>
<h3 class="tutorial">编辑 Java 源代码</h3>
<p>现在我们编辑 MIDlet 显示的文本。</p>
<ol>
<li>在 &quot;HelloMIDlet.java&quot; 下方,单击 &quot;Screen&quot;(屏幕)以显示 &quot;Screen Designer&quot;(屏幕设计器)窗口,其中显示了 &quot;Device Screen&quot;(设备屏幕),该屏幕是应用程序中唯一可用的屏幕。<tt></tt> </li>
<li>在 &quot;Device Screen&quot;(设备屏幕)中单击 <tt>Hello World!</tt> 消息。在 &quot;Properties&quot;(属性)窗口中,单击 <tt>Hello World!</tt> 文本以更改欢迎消息文本,然后按 Enter 键。在本示例中,我们键入了 <tt>Make my day</tt></li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/stringedit.png" alt="文本 'Make my day' 键入到 &quot;Properties&quot;(属性)窗口的文本字段中。" ></p>
<li>&quot;Screen&quot;(屏幕)视图显示您在 &quot;Text&quot;(文本)字段中输入的文本的预览。</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/motd-screen.png" alt="文本 'Make my day' 显示在 VMD 的 &quot;Screen&quot;(屏幕)视图中的 &quot;Device Screen&quot;(设备屏幕)预览中。" ></p>
</ol>
<h3 class="tutorial">编译并运行项目</h3>
<ol>
<li>从 &quot;Run&quot;(运行)菜单中选择 &quot;Run&quot;(运行)&gt; &quot;Run Main Project&quot;(运行主项目)(F6)。<tt></tt><tt></tt>在 &quot;Output&quot;(输出)窗口中观察项目编译的进度。注意 <code>HelloMIDlet.java</code> 文件在执行之前会先生成。设备仿真器打开,显示所执行的 MIDlet 的结果。设备仿真器启动 MIDlet 并显示您在源代码中输入的文本。</li>
<p><strong>提示</strong>:可以右键单击项目节点,然后从上下文菜单中选择 &quot;Run With...&quot;(运行方式...)<tt></tt>,可以指定运行 MIDlet 的仿真器。下面显示了 Java ME SDK 3.0 中提供的 <tt>DefaultFXPhone1</tt></p>
<p><img src="../../../images_www/articles/71/mobility/quickstart/motd-emulator.png" alt="Java ME SDK JavaFX 手机仿真器中显示的 &quot;Make my day&quot; 消息"></p>
<li>单击 &quot;Exit&quot;(退出)下面的按钮关闭 MIDlet。然后单击设备右上角的按钮关闭仿真器窗口。 </li>
</ol>
</div>
<h2><a name="source"></a>使用源代码编辑器创建 MIDP 应用程序</h2>
<div class="indent">
<p>使用源代码编辑器,可以手动创建 MIDlet 的代码。在源代码编辑器中创建代码会使您在编辑代码时获得更大的灵活性,并且可以插入预处理程序代码块。接下来,我们使用 &quot;New Project&quot;(新建项目)和 &quot;New File&quot;(新建文件)向导创建 <code>MyHello</code> 应用程序,并使用源代码编辑器完成代码。 </p>
<h3 class="tutorial">新建 Java ME MIDP 项目 </h3>
<ol>
<li>选择 &quot;File&quot;(文件)&gt; &quot;New Project&quot;(新建项目)(Ctrl-Shift-N 组合键)。<tt></tt><tt></tt>在 &quot;Categories&quot;(类别)下,选择 &quot;Java ME&quot;。<tt></tt>在 &quot;Projects&quot;(项目)下,选择 &quot;Mobile Application&quot;(Mobile 应用程序),然后单击 &quot;Next&quot;(下一步)。<tt></tt></li>
<li>在 &quot;Project Name&quot;(项目名称)字段中输入 <code>MyHelloMIDlet</code>(注意 &quot;MID&quot; 采用的是大写字母)。指定与前面创建的 <a href="#vmd"><code>MyHello</code></a> 项目不同的项目位置。在本教程中,我们首选 <code>$PROJECTHOME</code> 目录。 </li>
<li>选中 &quot;Run Main Project&quot;(运行主项目)复选框,并取消选中 &quot;Create Hello MIDlet&quot;(创建 Hello MIDlet)复选框。单击 &quot;Next&quot;(下一步)。 </li>
<li>选择缺省仿真器平台,并对其余选项使用缺省设置。单击 &quot;Finish&quot;(完成)。 </li>
<!--li>Expand &quot;Configuration templates provided by installed CLDC platforms&quot; and &quot;Sun Java Wireless Toolkit 2.52 for CLDC &quot; folders. Check the boxes next to each of the configurations. The IDE automatically creates a new project configuration for each template listed. </li-->
<li>IDE 将创建 <code>$PROJECTHOME/MyHelloMIDlet</code> 项目文件夹。此项目文件夹包含所有源代码和项目 meta 数据,例如项目的 Ant 脚本。 </li>
<li>在资源管理器窗口中,右键单击 <code>MyHelloMIDlet</code> 节点,然后选择 &quot;New&quot;(新建)&gt; &quot;MIDlet&quot;。<tt></tt><tt></tt></li>
<li>输入 <code>HelloMIDlet</code> 作为 MIDlet 名称(请注意,缺省情况下 &quot;MID&quot; 使用的不是大写字母)。单击 &quot;Finish&quot;(完成)。将创建 <code>HelloMIDlet.java</code> 文件,并在 IDE 的编辑器窗口中显示源代码。 </li>
<li>在源代码编辑器中单击,然后将
<pre class="examplecode">public class HelloMIDlet extends MIDlet</pre>
更改为
<pre class="examplecode">public class HelloMIDlet
extends MIDlet implements javax.microedition.lcdui.CommandListener
{</pre>
</li>
<li><code>startApp()</code> 方法前添加下面的文本:
<pre class="examplecode">
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, &quot;Hello Test Code&quot;, 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(&quot;Exit&quot;, javax.microedition.lcdui.Command.EXIT,
1);
}
return exitCommand;
}
javax.microedition.lcdui.TextBox helloTextBox;
javax.microedition.lcdui.Command exitCommand;
</pre>
</li>
<li><code>startApp()</code> 方法中添加 <code>initialize();</code> 代码行,使它如下所示:
<pre class="examplecode"> public void startApp() {
initialize();
}
</pre>
</ol>
<h3 class="tutorial">编辑 Java 源代码</h3>
<p>现在添加一些供 MIDlet 显示的文本。</p>
<ol>
<li><code>get_helloTextBox()</code> 方法中,将示例代码 &quot;Hello Test Code&quot; 替换为您选择的文本。例如,&quot;Make My Day&quot;。
</ol>
<!--<p><b class="notes">注意:</b>有关使用 NetBeans 中的 Java 源代码编辑器的完整指南,请参见 <a href="../../67/java/editor-tips.html">NetBeans IDE 中的 Java 编辑</a>。</p>-->
<h3 class="tutorial">编译并运行项目</h3>
<ol>
<li>从 &quot;Run&quot;(运行)菜单中选择 &quot;Run&quot;(运行)&gt; &quot;Run Main Project&quot;(运行主项目)(F6)。<tt></tt><tt></tt>在 &quot;Output&quot;(输出)窗口中观察项目编译的进度。注意 <code>HelloMIDlet.java</code> 文件在执行之前会先生成。设备仿真器随即打开以显示所执行的 MIDlet 的结果,其中会显示您在源代码中输入的文本。</li>
<p><img src="../../../images_www/articles/71/mobility/quickstart/mmd-emulator.png" alt="Java ME SDK 3.0 CLDC Clamshell 仿真器中显示的 &quot;Make My Day&quot; 消息"></p>
</ol>
</div>
<div class="feedback-box"><a href="/about/contact_form.html?to=6&subject=NetBeans%20MIDP%20Development%20Quick%20Start%20Guide">请将您的反馈发送给我们</a></div>
<br style="clear:both;" />
<h2><a name="nextsteps"></a>后续步骤 </h2>
<p>有关介绍如何开发 MIDP 和 CLDC 应用程序的更多教程,请访问 Mobile 应用程序学习资源。</p>
<ul>
<li><a href="../../trails/mobility.html">NetBeans IDE Java ME 学习资源</a></li>
</ul>
</body>
</html>