midiet能够访问java压缩包(*.jar)和应用程序描述符文件(*.jad)中的属性(attributes),你可以按照以下代码实现:
javax.microedition.midlet.midlet.getappproperty(string name)
以下举一个非常简单的例子来打印jar跟jad文件中的条目:
import javax.microedition.midlet.*;
public class showproperties extends midlet
{
public void startapp() throws midletstatechangeexception
{
system.out.println("vendor: " +
getappproperty("midlet-vendor"));
system.out.println("description: " +
getappproperty("midlet-description"));
system.out.println("jadfile version: " +
getappproperty("jadfile-version"));
system.out.println("midlet-data-size: " +
getappproperty("midlet-data-size"));
}
public void pauseapp()
{ }
public void destroyapp(boolean unconditional)
{ }
}
manifest.mf 文件存储在showproperties.jar 文件中:
midlet-name: show properties midlet
midlet-version: 1.0.1
midlet-vendor: core j2me
midlet-1: showprops, , showproperties
microedition-profile&: midp-1.0
microedition-configuration: cldc-1.0
midlet-description: a simple property list example
midlet-data-size: 1500
showproperties.jad 文件
midlet-name: show properties midlet
midlet-version: 1.0.1
midlet-vendor: core j2me
midlet-jar-url: showproperties.jar
midlet-jar-size: 1190
midlet-1: showprops, , showproperties
midlet-description: a simple property list example
jadfile-version: 1.5
midlet-data-size: 500
要点:
1.manifest.mf文件存储在jar文件中,那是你实际可以访问的属性(attributes)。
2.showproperties.jad 文件中引用了这个jar文件:
midlet-jar-url: showproperties.jar
3.这些属性包括:midlet-name,midlet-version,midlet-vendor既存在于jar文件中的manifest.mf中又存在于jad文件中,所有的值都要求是一样的。
4.属性(attribute)jadfile version是用户自定义的属性,并没有在j2me规格中定义。这样就可以被midiet程序访问而不用修改jar文件。
5.属性(attribute)midlet-data-size同时存在于manifest.mf和jad文件中。当存在于两个文件中的属性一样时,jad文件中的会被优先选择。
6.以上例子是基于midp和cldc 1.0.3.
闽公网安备 35060202000074号