服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

在nec电话上开发midp程序入门

 介绍

最近,与手机相关的技术有了突飞猛进的发展。尤其是手机java应用的出现,迎来了手机新时代。那么想制作手机java应用的人也不会是少数。在本讲座中,就有关n800中运行的midp应用的开发,分几次进行解说。这一讲的主题是以进行应用的开发为目的的环境构筑及其运行确认。

♦ n800的特征

列举以下几点n800的特征:
• 50kb的最大应用容量。
• 180hx162w的超大屏幕, 65,535 彩色。
• png形式的画像文件表示。
• smf 形式的音乐文件再生。
• http通信、背景灯、振动控制。
• 子画面功能。
• 像册功能。
• 各种各样的图形扩展功能。

尤其50kb的应用容量是比较大,即使没有压缩class文件的尺寸,也有助于进一步的开发。此外,还增加了通信功能、子画面功能、像册功能等。关于各种功能,从下讲开始将详细说明。

♦ java 2 micro edition

java 2 micro edition (以下称j2me) 是 java 2的一个平台。其分类是:j2ee是服务器网址的关联技术、j2se面向pc应用的用户、j2me面向多用的组装机器。另外两个较明显的区分点是,在基本部分中有被称为[配置]的假想机械和api套;在设计(机器)种类中有被称为[轮廓]的固有功能实际安装式样。这样,就对各种各样的组装机器提供功能。       (图 1-1.)
在nec电话上开发midp程序入门(图一)

♦ midp

midp(mobile information device profile)是指在手机和pda等的终端工作的cldc*上的轮廓, 根据midp expert group(sun microsystems, motorola, nokia等)而策定的手机终端用的java标准规格。midp的应用是指midlet。多数的手机java应用都是依据midp制作的。在n800手机上安装的java当然也是依据midp制作的。 

* cldc是以限制cpu、存储容量等的小型终端为对象的配置。cldc采用kvm假想机械、即使在几百kb的存储和16b的cpu上也能正常工作。

安装开发环境

现在,准备开发手机n800的midplet。

必要的系统环境如下所示:

  • os: windows 2000 或 xp
  • hdd空容量: 10 mb以上
  • cpu: celeron 300 mhz 以上
所需软件如下所述,请从url上下载并安装在适当的目录下。
  • java 2 sdk standard edition 1.3.0 以上 (使用j2me wireless toolkit 1.0时,选择使用 j2sdk v 1.3 ): http://java.sun.com/j2se/
  • j2me wireless toolkit 1.0 以上 (使用2.0以上时, 必须使用j2sdk v 1.4.0 ): http://java.sun.com/products/midp/
  • n800 application emulator 1.0 以上
同时,进行的工作确认环境如下所示:
  • windowsxp professional
  • java 2 sdk standard edithion1.3.1
  • j2me wireless toolkit 1.0.4
  • n800 application emulator1.0

♦ 设定 n800 application emulator

安装完成后就是设定。按照window中的[开始]、[程序]、[nec n800 application emulator] 、[n800 application emulator]的顺序点击,启动n800 application emulator,首先,向j2sdk 和 j2me 的首目录设定通过。  (图 1-3.)
在nec电话上开发midp程序入门(图二) 在nec电话上开发midp程序入门(图三)
 以上就是[n800 application emulator]的设定完成图示。

♦ midlet 生命周期  (图 1-4)

 在实际制作midlet之前,我们先看看它的生命周期。 
1. 从终端发出执行命令,被称为违约建立者(没有自变量)。
2. 被称为startapp(),midlet开始了。
3. 来电时, pauseapp() 打开,midlet进入静止状态。
4. 通话结束后,startapp() 再次打开,midlet打开。
5. 结束midlet时,destroyapp()打开, midlet结束。
在nec电话上开发midp程序入门(图四)
midplet以在手机上操作为前提,根据电话的接收信号,在应用的操作过程中曾经打开过pauseapp()。所以在pauseapp()中有必要输入停止处理threads等信息。

♦ midp应用的制作

让我们先来弄清应用的实际制作和操作。制作在textbox中能表示出的[hello world]。
midp 的制作程序
midp按照以下程序制作:

1. 制作源码 
2. 编码
3. 预先检测
4. 创建jar文件
5. 创建 jad 文件

首先,制作java源码。其次,对java文件进行编码,制作class文件。到这步与普通的java开发都没什么区别。在midp应用的开发中,预先检测制作完成的class文件(关于“预先检测”随后再详细说明)。随后就该制作jar文件、jad文件了。关于这些下面会详细说明。制作程序如下图(1-5)所示:
在nec电话上开发midp程序入门(图五)
按照上面的程序制作[hello world]应用。

1.制作源码
首先要沿袭 javax.microedition.midlet.midlet, 并超越 startapp(), pauseapp(), 和 destroyapp()。以下是源码。 
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class helloworld extends midlet{
private display display;
textbox textbox;
public helloworld(){
display = display.getdisplay(this);
textbox = new textbox("helloworld","helloworld.",500,0);
}
/**
* 在应用开始时的方法:
*/
public void startapp(){
display.setcurrent(textbox);
}
/**
* 来电时的方法:
*/
public void pauseapp(){
}
/**
* 应用结束时的方法:
*/
public void destroyapp(boolean unconditional){
}
}
上述过程取名为[helloworld java],保存在目录c:¥n800¥hellowrld¥src中。
*下讲再详述关于方法内容等细微的代码。

2.编码
接着是编码。 在编码中使用 n800 application emulator。首先,打开选择菜单[options]按[systemノ] (图1-6) ,设定源目录、输出目录、jar文件名。关于源码,对保存过的目录[helloworld java]设定为(c:¥n800:¥hellowrld:¥src),输出目录设定为c::¥n800:¥hellowrld:¥output,jar文件名成为[hellworld].请注意是目录而不是指定的文件。  (图1-7.)
在nec电话上开发midp程序入门(图六) 在nec电话上开发midp程序入门(图七)
其次是编码。在选择菜单点击[tools]选择[compile]进行编码。 (图 1-8.)
编码的状况表示成midlet message panel。一旦编码成功,就会出现compilation completed的信息,请确认。出现错误和警告时,可以以这个信息为基础进行调试。
在nec电话上开发midp程序入门(图八)
3.预先检测
编码完成之后便是预先检测了。通常,在java程序里要检测在运行过程中能否安全运行。但是,在midp程序下,为减轻负担,有必要事先检测。 这种操作就是预先检测。在选择菜单点击[tools]选择[compile]进行检测。(图1-9)检测完成后,在midlet message panel就会出现[preverify completed]。
在nec电话上开发midp程序入门(图九)
4.制作jar文件
midlets 要由jar和jad文件运行,所以必须将预先检测过的jar和jad文件归纳到一个jar文件中。
点击工具菜单选择创建jar文件。 (图1-10.)
如图所示打开窗口,就显示出"manifest"文件, manifest文件是指在jar文件中包含了什么样的文件。
在nec电话上开发midp程序入门(图十)
manifest 的各参数有以下意思。
midlet-name midlet suite的标题
midlet-version midlet suite版本
midlet-vendor midlet suite 卖方 
microedition-profile midp  版本 
microedition-configuration cldc  版本
midlet-data-size midlet所使用的rms尺寸
本次的 helloworld,照下述输入。  (图 1-11.)
midlet-namehelloworld(用取消键表示)
midlet-version1.0.0
midlet-vendornec
microedition-profilemidp-1.0(用取消键表示)
microedition-configurationcldc-1.0((用取消键表示)
midlet-data-size(空栏)
when you are done setting up the 安装完manifest文件之后,按ok键就创建了jar文件。另外,由于在midlet message panel里显示出[jar manifest file creation completed][jar file creation completed],所以还是再次确认比较好。
在nec电话上开发midp程序入门(图十)
5.创建 jad 文件
接着,点击工具菜单选择创建jad文件。 (图 1-12.)参数以manifest文件为基础。相同的参数在两个文件之间可能不工作,请稍加注意。 
在nec电话上开发midp程序入门(图十二)
各参数有以下意思。
midlet-namemidlet suite的标题
midlet-versionmidlet suite版本
midlet-vendormidlet suite版本名
midlet-jar-url下载jar文件的url 
midlet-jar-size下载的jar文件的尺寸
midlet-data-sizemidlet suite使用rms 的尺寸
midlet-usenetworkmidlet suite使用网络与否(是或不是)
midlet-install-notify发送安装位置报告的url  (必须http://)
midlet-delete-confirm消除midlet suite时的确认信息
midlet-delete-notify消除发送报告的url  (必须http://)
此时,全部清空后按ok键就创建完成jad文件。  (图 1-13.)
在nec电话上开发midp程序入门(图十三)
程序全部完成。
进行
现在进行,在[application location]上设定刚才作成的jad文件。然后点击[run emulator]。(图1-14)
在nec电话上开发midp程序入门(图十四)
出现midlet suite的一览表,选择[helloworld]。 (图1-15)    
在nec电话上开发midp程序入门(图十五)
显示出"helloworld." 。(图1-16)
在nec电话上开发midp程序入门(图十六)
于是,能进行基本的应用。上述中,即使不指定jad文件而指定class文件,也能进行应用。(图1-17)
使“make”简单
由于很容易说明顺序,可以从每一步的菜单开始进行,但是在实际的开发中,能够在make中一次作成从编码到jad文件的制作。打开选择菜单 [options]→[system] 的设定窗口,用make execute「compile」在「preverify」「create jar」「create jad」键入检查。
在nec电话上开发midp程序入门(图十七)
那么,制作完源码后进行选择菜单的[tools]→[make],能够一次进行从编码到jad文件的制作。

♦ 总结

实际上由于n800 application开发环境整洁,所以也能逐渐开发midp应用。从下回开始就边制作边解说。

扫描关注微信公众号