J2ME与MIDP开发(3)
J2ME与MIDP开发(3)
大家是不是心里都痒痒的了,好,让我们开始编写一个非常简单的 MIDlet吧,这个 MIDlet将创建一个带有一则消息的文本框。我们还要添加一个命令按钮用于退出这个 MIDlet。
一、编写 Java源代码
创建一个新目录来保存你以后编写的MIDlet,例如 c:midlets,在这个目录里再创建一个叫myMIDlet的目录,使用任何文本编辑器创建一个名为 simpleMIDlet.java的文件并输入下面这一段 Java源代码。把这个文件保存在c:midletsmyMIDlet目录 (或者任何你选择的目录)。
代码段1
simpleMIDlet.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class simpleMIDlet extends MIDlet implements CommandListener
{
private Display display; // 引用MIDlet的Display 对象
private TextBox tbxMain; // Textbox 显示一条消息
private Command cmdExit; // 设定按钮用于退出MIDlet
// MIDlet构造程序
public simpleMIDlet()
{
display = Display.getDisplay(this);
cmdExit = new Command("Exit", Command.SCREEN, 1);
tbxMain = new TextBox("Simple MIDlet", "Welcome ", 50, 0);
tbxMain.addCommand(cmdExit);
tbxMain.setCommandListener(this);
}
// 被应用程序管理器调用来启动MIDlet。
public void startApp()
{
display.setCurrent(tbxMain);
}
// 一个必要的方法
public void pauseApp()
{ }
file://一个必要的方法
public void destroyApp(boolean unconditional)
{ }
file://检查一下是否选择了退出命令
public void commandAction(Command c, Displayable s)
{
if (c == cmdExit)
{
destroyApp(false);
notifyDestroyed();
}
}
}
此时,先不必担心每行代码是做什么用的,把注意力放在开发这一整个环节中。
二、编译并预验证(preverify)
现在你必须编译这个 java源文件并且 preverify生成的.class文件。
1.编译源代码
进入命令行形式,进入你保存文件的项目目录,使用下面的命令编译程序。使用下面的命令编译程序。
avac -bootclasspath c:j2memidp-fcsclasses simpleMIDlet.java
选项 - bootclasspath C: j2memidp - fcsclasses指定了 Java自举(启动)类文件目录。我们必须自己指向midp类,否则javac会使用默认的JDK类库去编译MIDlet程序。不出问题的话,就能顺利地编译simpleMIDlet.java生成simpleMIDlet.class文件 (默认情况下,生成的.class位于 Java源文件所在的目录)。
2.预验证类文件。
preverify -classpath c:j2memidp-fcsclasses;. -d . simpleMIDlet
选项" -classpath C:j2memidp-fcsclasses;." 指定了到哪里去寻找用于预验证的.class文件。这包括需要用来做验证处理的 MIDP类 (通过 c:j2memidp-fcsclasses指定 )和你的类文件,它位于当前目录 (就是"."指定的)。
选项"-d." 告诉预验证器把验证过的类文件放在什么地方。这一点"." 指当前目录,即原始的类文件相同的位置。
注意:前面的 preverify命令行选项将用一个新的、预验证过的类文件覆盖原先的类文件。你可以分两个目录,一个用来保存通过编译的类文件,另一个用来保存通过预验证创建的类文件。但是没有经过预验证的类文件是不能被应用程序管理器载入的。
3、运行 MIDlet
我们现在准备在移动设备模拟器中运行 MIDlet,如果你现在还处在命令行方式,请输入
midp firstMIDlet
应该可以看到下面的输出结果:
J2ME与MIDP开发(3)
大家是不是心里都痒痒的了,好,让我们开始编写一个非常简单的 MIDlet吧,这个 MIDlet将创建一个带有一则消息的文本框。我们还要添加一个命令按钮用于退出这个 MIDlet。
一、编写 Java源代码
创建一个新目录来保存你以后编写的MIDlet,例如 c:midlets,在这个目录里再创建一个叫myMIDlet的目录,使用任何文本编辑器创建一个名为 simpleMIDlet.java的文件并输入下面这一段 Java源代码。把这个文件保存在c:midletsmyMIDlet目录 (或者任何你选择的目录)。
代码段1
simpleMIDlet.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class simpleMIDlet extends MIDlet implements CommandListener
{
private Display display; // 引用MIDlet的Display 对象
private TextBox tbxMain; // Textbox 显示一条消息
private Command cmdExit; // 设定按钮用于退出MIDlet
// MIDlet构造程序
public simpleMIDlet()
{
display = Display.getDisplay(this);
cmdExit = new Command("Exit", Command.SCREEN, 1);
tbxMain = new TextBox("Simple MIDlet", "Welcome ", 50, 0);
tbxMain.addCommand(cmdExit);
tbxMain.setCommandListener(this);
}
// 被应用程序管理器调用来启动MIDlet。
public void startApp()
{
display.setCurrent(tbxMain);
}
// 一个必要的方法
public void pauseApp()
{ }
file://一个必要的方法
public void destroyApp(boolean unconditional)
{ }
file://检查一下是否选择了退出命令
public void commandAction(Command c, Displayable s)
{
if (c == cmdExit)
{
destroyApp(false);
notifyDestroyed();
}
}
}
此时,先不必担心每行代码是做什么用的,把注意力放在开发这一整个环节中。
二、编译并预验证(preverify)
现在你必须编译这个 java源文件并且 preverify生成的.class文件。
1.编译源代码
进入命令行形式,进入你保存文件的项目目录,使用下面的命令编译程序。使用下面的命令编译程序。
avac -bootclasspath c:j2memidp-fcsclasses simpleMIDlet.java
选项 - bootclasspath C: j2memidp - fcsclasses指定了 Java自举(启动)类文件目录。我们必须自己指向midp类,否则javac会使用默认的JDK类库去编译MIDlet程序。不出问题的话,就能顺利地编译simpleMIDlet.java生成simpleMIDlet.class文件 (默认情况下,生成的.class位于 Java源文件所在的目录)。
2.预验证类文件。
preverify -classpath c:j2memidp-fcsclasses;. -d . simpleMIDlet
选项" -classpath C:j2memidp-fcsclasses;." 指定了到哪里去寻找用于预验证的.class文件。这包括需要用来做验证处理的 MIDP类 (通过 c:j2memidp-fcsclasses指定 )和你的类文件,它位于当前目录 (就是"."指定的)。
选项"-d." 告诉预验证器把验证过的类文件放在什么地方。这一点"." 指当前目录,即原始的类文件相同的位置。
注意:前面的 preverify命令行选项将用一个新的、预验证过的类文件覆盖原先的类文件。你可以分两个目录,一个用来保存通过编译的类文件,另一个用来保存通过预验证创建的类文件。但是没有经过预验证的类文件是不能被应用程序管理器载入的。
3、运行 MIDlet
我们现在准备在移动设备模拟器中运行 MIDlet,如果你现在还处在命令行方式,请输入
midp firstMIDlet
应该可以看到下面的输出结果:
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131709/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/374079/viewspace-131709/