65.9K
CodeProject 正在变化。 阅读更多。
Home

J2ME:Hello World 移动应用程序

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.56/5 (8投票s)

2011年3月17日

CC (ASA 3U)

3分钟阅读

viewsIcon

104880

downloadIcon

4786

这是一篇 J2ME 初学者文章,介绍了如何编写您的 Hello World J2ME 应用程序。

引言

移动技术是一种日常技术,几乎每个人都有。有些人甚至比使用 PC 更多地使用这项技术,并且他们总是需要新功能。这些功能是通过移动应用程序提供的,所以我决定写一系列关于构建移动应用程序的文章。

背景

J2ME 应用程序只是设计用于在移动设备上运行的、功能有限的 Java 应用程序。这些设备的标准 Java 运行时环境是使用移动信息设备配置 (MIDP) 结合连接的受限设备配置 (CLDC) 提供的。MIDP 和 CLDC 仅提供移动应用程序所需的核心应用程序功能。要编写 J2ME 应用程序,您需要 Java Platform Micro Edition SDK 和一个 IDE,可以是 Netbeans 或 Eclipse。

创建 MIDlet

所有 J2ME 应用程序都必须有一个主类,该类应派生自一个名为 MIDlet 的特殊类。它就像应用程序的入口点,并管理应用程序的生命周期。MIDlet 可以处于三种状态之一:活动暂停销毁。当应用程序管理器调用 pauseApp() 方法时,MIDlet 处于暂停状态,当它调用 startApp() 方法时,MIDlet 处于活动状态。当调用 MIDlet destroyApp() 方法或 MIDlet 本身调用 notifyDestroyed() 方法时,将进入销毁状态。

MIDlet 类位于 javax.microedition.midlet 包中,因此首先要做的是导入此包,以及包含 J2ME UI 组件的 javax.microedition.lcdui

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

下一步是创建一个从 MIDlet 类派生的新类,并实现三个 abstract 方法:startApp()pauseApp()destroyApp()

public class HelloMIDlet extends MIDlet {
	public HelloMIDlet() {
	}

	protected void startApp() {
	}

	protected void pauseApp() {
	}

	protected void destroyApp(boolean unconditional) {
	}
}

显示和可显示 

J2ME 应用程序可以在后台运行或与用户交互。交互式应用程序需要通过获取 Display 类的实例来访问移动显示。Display 对象用于显示所需的用户界面,该用户界面应派生自 Displayable 类,在本文中将使用 Form 类的实例。FormDisplayable 类的派生类,它有一个标题,您可以使用其他 UI 组件向其中添加内容。

因此,下一步是定义 DisplayForm 类的两个数据成员。

public class HelloMIDlet extends MIDlet {
	private Display display;
	private Form helloFrm;
	...
} 

MIDlet 类的构造函数中,通过调用构造函数并将表单标题传递给它来创建 Form 类的实例。

public HelloMIDlet() {
	helloFrm = new Form("Hello World");
} 

显示表单

下一步是获取 Display 类的实例并显示表单。要获取 Display 类的实例,您需要调用 Display 类的 static 方法 getDisplay() 并将对 MIDlet 对象的引用传递给它。接下来,使用 Display 对象的 setCurrent() 方法显示 Form

protected void startApp() {
	display = Display.getDisplay(this);
	display.setCurrent(helloFrm);
} 

结论

本文介绍了如何创建 J2ME Hello World 移动应用程序。所有 J2ME 应用程序所需的第一个步骤是创建 MIDlet 类,它是应用程序中的主类。然后,您可以将 Form 类的实例用作应用程序中的主 UI,应使用 Display 类的对象将其显示。

以下是完整的应用程序代码

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class HelloMIDlet extends MIDlet {
	private Display display;
	private Form helloFrm;

	public HelloMIDlet() {
		helloFrm = new Form("Hello World");
	}

	protected void startApp() {
		display = Display.getDisplay(this);
		display.setCurrent(helloFrm);
	}

	protected void pauseApp() {
	}

	protected void destroyApp(boolean unconditional) {
	}
}

历史

  • 2011年3月17日:初始版本
© . All rights reserved.