总览
Java移动应用程序称为J2ME。 通常,当我们在移动技术领域工作时,我们必须考虑J2ME应用程序。 通过这种方式,我们可以开发我们的移动应用程序,也可以通过jad或jar文件将其安装在我们的设备中。 近年来,手机开发中最大的增强是JavahostedMIDlet的引入。 MIDlet在Java虚拟机上执行,该Java虚拟机抽象出底层硬件,并允许开发人员创建演示文稿,这些演示文稿可以在通常支持Java运行时系统的各种设备上运行。 不方便地,这种便利是以限制访问设备硬件为代价的。 现在,在移动开发中,第三方应用程序接收与电话制造商编写的本机应用程序不同的硬件访问和执行权利被认为是正常的。 Java MIDlet的引入和实现扩大了开发人员的受众。 但是缺乏底层硬件访问和执行的沙箱操作,意味着大多数移动应用程序对于设计用于在较小屏幕上呈现的桌面程序或网站都是常规的。
在本文中,将详细讨论MIDlet的创建。
介绍
J2ME缩写为Java 2,微型版。 它是被困在处理能力和存储能力有限以及交替或相当低带宽的网络连接系统的设备上的Java的功能版本。 这些系统还包括我们日常生活中通常使用的手机,寻呼机,无线设备。 MIDlet是移动电话系统小程序的一部分。 这里的小程序可以在受保护的沙箱中运行。 该系统在该过程中非常受限制。 当前在大多数支持Java的手机上都可以找到MIDP()1.0,并且相当不错。 例如,KVM不允许我们处理浮点数,并且为MIDP 1.0编写的MIDlet在没有电话制造商专有API(应用程序编程系统)的情况下无法访问沙箱之外的任何内容。 现在,我们可以梦想成真地开发带有钩子的最终MIDlet,并将其插入到backburner的电话操作系统的每个部分中。 基本上,当我们想确切地了解MIDP 1.0的局限性时,我们应该在这里阅读规范。 如果我们这样做,则它可能想签出MIDP 2.0版本,并且它的等级更高。 现在,我们将要编写第一个MIDlet –一个功能齐全的“ Hello MIDlet”应用程序。
MIDlet生命周期
每个系统都应该有生命周期,通过这个生命周期,我们可以逐步了解系统。 在这里,我们简短地讨论MIDlet生命周期移动设备,例如仿真器或Real设备,它们可以使用自己的称为应用程序管理软件(简称为AMS)的软件技术过程与MIDlet进行交互。 AMS负责初始化,启动,暂停,恢复和销毁MIDlet。 AMS可能负责安装和删除MIDlet。 为了促进此生命周期管理,MIDlet可以处于三种状态之一,该状态通过每个MIDlet扩展和覆盖的MIDlet类方法进行控制。 这些状态分为活动,暂停和破坏等不同部分。
虚拟机
通常,这些类型的编程模型虚拟机或虚拟设备在软件开发部分中也起着至关重要的作用。 现在,由于更改了内存并显示了功能,因此CLDC(J2ME连接的受限设备配置)和CDC(J2ME连接的设备配置)需要使用自己的虚拟机。 CLDC虚拟机小于CDC所需的虚拟机,并且支持较少的功能。 从这种意义上讲,CLDC的虚拟机称为Kilo虚拟机(KVM),而CDC的虚拟机称为CVM。
J2ME Connected受限设备配置:
- 它用于为手机,寻呼机和无线设备指定Java环境,也支持其他设备。
- CLDC设备通常是无线的,这意味着通过CLDC支持移动系统
- 内存需求在该特定设备中非常重要,因此Java可以使用160 – 512k的内存。
- 节能系统的电源或电池供电能力有限。
- 沟通过程在这里非常重要。 网络连接为无线,间歇性,低带宽(9600bps或更小)。
J2ME连接的设备配置:
- 通常,它描述了数字电视机顶盒,移动,高端无线设备和汽车遥测系统的Java环境。
- 该设备由32位处理器支持的系统供电。
- Java平台可使用2MB或更多的内存。
- 经常是无线,不连续,低带宽(9600bps或更小)的网络连接
在Net Beans中创建我们自己的MIDlet的过程
通常,当我们在Net Beans字段中工作时,由于这个原因,我们必须安装Java SE Development Kit(JDK),因此必须首先下载并安装最新的32位版本的Java SE Development Kit(JDK)。 需要JDK来编译Java类以执行代码。 《 Net Beans安装指南》要求在安装过程中用来浏览到本地驱动器上的JDK位置。
ð请记住这一点,当我们安装Net Beans时,我们选择自定义安装并清除“功能随需应变”选项。 然后下载并安装支持Java ME(微型版)的软件开发套件(SDK)。 SDK提供了IDE涉及的Java ME类库,用于为特定设备平台构建MIDlet。
实际上,当我们为Series 40设备生成MIDlet时,我们使用的是Java的诺基亚SDK(软件开发工具包)。 现在,如果我们要为40系列,第6版或更早的40系列设备创建MIDlet,请使用相应的40系列SDK。
ð请记住,SDK已与IDE正确集成,并且还将SDK与IDE部分安装在同一逻辑驱动器上。
配置Net Bean的过程
安装所需的软件后,将Net Beans与安装的SDK集成在一起。
在这里,我们将逐步讨论创建项目的过程:
- Open Net Beans(版本7.2.1)可能会根据软件更新过程进行更改
- 选择工具-> Java平台 。
- 单击添加平台 。
- 选择Java ME CLDC Platform Emulator ,然后单击下一步 。 Net Beans在我们的计算机上搜索支持Java ME的SDK。
- 选择“ 文件”>“新建项目” 。
- 选择Java ME-> Mobile Application ,然后单击下一步 。
- 如果我们在Net Beans IDE中找不到SDK(软件开发工具包),请单击“查找更多Java ME平台文件夹”,然后选择安装SDK的文件夹。 Net Beans在选定的文件夹中搜索支持Java ME(微型版)的SDK(软件开发工具包)。
- 选择SDK,然后单击Next-> Net Beans检测SDK功能。
- 完成后,单击配置->单击完成,然后关闭。
- 现在,您的开发环境已设置好,您可以在Net Beans中创建MIDlet。
要创建HelloBCEI MIDlet:
- 下载并安装Netbeans(选择支持Java Micro Edition的安装包)。
在此项目名称字段中,输入“ HelloBCEI”。
- 清除“创建默认包和主要可执行类 ”复选框。
- 点击下一步。 MIDlet设置将继续进行设备平台选择。
- 在“仿真器平台”下拉菜单选项中,选择要为其创建MIDlet的设备平台:
对于那些40系列设备,我们在这里选择诺基亚Java软件开发套件。
- 选择CLDC-1.1和MIDP-2.0。 我们也可以选择MIDP-2.1并单击Finish 。 NetBeans为我们设置了MIDlet项目。
现在,我通过以下方式创建程序。
- 要为MIDlet创建主类,请选择File-> New File。
- 选择CLDC-> MIDlet,然后单击下一步。
- 在“ MIDlet名称”字段中,输入“ HelloBCEI”。
- 在MIDP类名称字段中,输入“ HelloBCEIMIDlet”。
- 点击完成 。
HelloBCEI MIDlet类是在默认程序包中创建的。 在这里,我们写下在程序中生成代码的代码。
清单1:显示MIDlet类
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.midlet.MIDlet;public class HelloMIDlet extends MIDlet
{
public HelloWorldMIDlet()
{}
// Sets the MIDlet’s current Display to a HelloScreen object.
public void startApp()
{
Displayable current = Display.getDisplay(this).getCurrent();
if (current == null)
{
HelloScreen helloScreen = new HelloScreen(this, “Hello, BCEI!”);
Display.getDisplay(this).setCurrent(helloScreen);
}
}
public void pauseApp()
{}
public void destroyApp(boolean unconditional)
{}
}
要创建HelloBCEIScreen类:
- 选择文件->新文件 。
- 选择Java-> Java类 ,然后单击下一步。
- 在“类名”字段中,输入“ HelloBCEI”。
- 点击完成 。 HelloBCEI类在默认包中创建。
清单2:在默认包中创建的所示类
import javax.microedition.lcdui.*;class HelloBCEIScreen extends Form implements CommandListener
{
private final HelloBCEIMIDlet midlet;
private final Command exitCommand; //Exit command for closing the MIDlet in the device UI.public HelloBCEIScreen(HelloWorldMIDlet midlet, String string)
{
super(“”);
StringItem helloText = new StringItem(“”, string);
super.append(helloText);
this.midlet = midlet;
exitCommand = new Command(“Exit”, Command.EXIT, 1);
addCommand(exitCommand);
setCommandListener(this);
}public void commandAction(Command command, Displayable displayable)
{
if (command == exitCommand)
{
midlet.notifyDestroyed();
}
}
}
选择File-> Save All保存项目。
在“项目”窗格中,右键单击HelloBCEI项目,然后选择“ 部署选项” 。 选择部署选项后,程序即可安装在设备中。
NetBeans构建MIDlet,并创建用于将MIDlet部署到设备的JAR和JAD文件。 您也可以在dist文件夹下的“文件”窗格中找到生成的文件。
调试MIDlet
在调试MIDlet之前,我们必须具有MIDP可执行文件的版本以及在其类文件中具有调试密码的MIDlet。 要查看我们是否具有可接受的midp可执行文件版本,并在-help选项的中间运行midp命令。 如果生成的可执行文件具有Java调试功能,那么我们将看到下面列出的-debugger选项。 例如:
C:\midp2.0fcs> bin\midp -helpUsage: midp [<options>]Run the Graphical MIDlet Suite Manager….or midp [<options>] -debugger …
我们正在使用的midp可执行文件版本不支持Java编程语言调试。 为了生成包含调试符号的MIDlet版本,我们对javac(Java的编译器)命令使用–g选项。
要调试MIDlet,应遵循以下步骤:
1.首先打开命令提示符或终端窗口。
2.将当前目录更改为midpInstallDir。
为了说明起见,如果目录中安装了MIDP Reference成就
c:\midp2.0fcs we can run the command:c:\> cd midp2.0fcs
3.在调试模式下启动MIDP Reference完成并可执行文件。
在-debugger和-port开关中间使用midp命令。 端口号应为2800。此处,KVM调试代理期望调试器在其上运行的端口号。
参考实施可执行文件。 例如:
c:\midp2.0fcs\> bin\midp -debugger -port 2800 -classpath classes
4.现在启动KVM调试代理。
查看KVM文档以获取有关正确语法,参数和选项的信息。 对于标本,以下命令使KVM调试代理连接到我们在上一步中启动的midp可执行文件,然后在端口5000处侦听与Java™平台调试器体系结构过程兼容的软件:
c:\midp2.0fcs\> java -jarc:/kvm/bin/kdp.jar kdp.KVMDebugProxy –l 5000 -p -r localhost 2800 -cp
包含MIDletClassFiles的路径
5.从任何与Java平台调试器体系结构兼容的调试器连接到KVM调试代理。 兼容的调试器包括jdb,Sun™ONE Studio(以前称为Java的Forte™),JBuilder,Code Warrior,VisualCafé等。
部署项目
现在,我们将讨论部署过程。 我们已经可以直接在移动设备上部署MIDlet并运行它。 基本上有两种方法可以做到这一点。 首先,自然是通过我们的计算机和手机之间的网络连接。 此过程可以通过USB(通用串行总线)电缆或蓝牙无线连接进行,具体取决于我们的设备。 大多数支持Java的设备将允许我们通过此连接安装J2ME应用程序。
其次,这一章更具启发性,因为它通过互联网系统将我们的MIDlet开放给外界。 通常,这意味着我们的设备应该能够使用其内部浏览器连接到Internet。
<HTML>
Click <a href=”DateTimeAppliction.jad”>here</a> to download DateTimeApplication MIDlet!
</HTML>
处理以在我们自己的设备中获取代码:
当我们创建了漂亮的小MIDlet并确保所有功能在仿真器中都能正常运行后,下一步就是使它在实际设备上运行。
空中(OTA)设置:
OTA设置允许用户使用手机(移动电话)中内置的WAP浏览器无线下载我们的应用程序。 首先,我们需要看一下使用J2ME Wireless Toolkit打包MIDlet时生成的Java Application Descriptor(JAD)文件。 当我们通过Wireless Toolkit编辑JAD文件时,我们必须打开我们的项目,然后单击Settings选项。 这将打开一个包含多个选项卡的新窗口-API选择,必需,可选,用户定义,MIDlet,推送注册表和权限。
所有这些类型的应用程序在我们的工作领域中都至关重要。 下表给出了简要的想法。
结论:
在上面的讨论中,我们了解了Java Micro Edition。 我们知道该版本适用于移动软件开发平台。 因为当我们研究基于移动软件的技术时,J2ME非常可靠并且对我们有帮助。 如果我们作为移动软件开发人员从事该特定领域的工作,那么Java平台是高度安全的。
希望您对MIDlet的创建及其实际实现有所了解。 继续在TechAlpine看!
翻译自: https://www.javacodegeeks.com/2014/06/how-to-create-midlet-in-j2me.html