[JavaME] Java描述文件和清单文件的预定义属性

JAR文件里一般都会有一个MANIFEST.MF文件,这个是JAR的清单文件。而在JAR外部,有时会有一个JAD文件,这个是JAR的描述文件。它们都是纯文本文件,里面记录了属性名和属性值。MIDP预先定义了一些属性,这些属性见下表:

属性名作用
MIDlet-NameMIDlet Suite 的名称
MIDlet-VersionMIDlet Suite 的版本号码。格式为:“xx.xx.xx”, xx分别对应主、次、微号码。版本号码可以让应用程序管理器知道是该安装(版本比已安装的旧),还是该更新(版本比已安装的新)。
MIDlet-Vendor提供此MIDlet Suite的厂商名称。
MIDlet-Icon代表此MIDlet Suite的图标文件名。此文件为一个位于JAR文件的PNG图形文件。必要时,应用程序管理器显示此图像来代表这个MIDlet Suite。注意,文件名(包括扩展名)是区分大小写的。
MIDlet-Description描述此MIDlet Suite的相关信息
MIDlet-Info-URL描述此MIDlet Suite更多相关信息的URL。正确的语法请参考http://www.ietf.org/rfc/rfc2396.txt。这个属性可以让用户在下载MIDlet Suite之前通过此URL查看更多资料,或者也可以和MIDlet类中的platformRequest()方法配合使用。
MIDlet-<n>用来描述MIDlet Suite之中的MIDlet的信息。第一个MIDlet就以MIDlet-1代表(最小要从1开始),第二个MIDlet就是MIDlet-2代表(之后的号码要连贯),其它依次类推。
属性值的格式为: “应用程序名,图标,类名”
三者以逗号分开,每项的前后空白或Tab都会被应用程序管理器忽略。
其中,应用程序名由开发人员定制,图标必须要是JAR里的PNG文件(不指定也没关系),类名必须是完整的“包名.类名”,区分大小写。而且此类要继承javax.microedition.midlet.MIDlet类,并拥有一个没有参处的构造函数。
MIDlet-Jar-URLJAR文件的URL地址。正确的语法请参考www.ietf.org/rfc/rfc2396.txt。可以使用相对位置或绝对位置。使用相对位置,就是假设JAR和JAD位于同一个位置。但建议还是使用觉得位置。
MIDlet-Jar-SizeJAR文件的大小(以byte为单位),这是应用程序管理器初步确认JAR是否被篡改/损坏所使用的属性。
MIDlet-Data-SizeMIDlet Suite 所需要的永久资料存储区(persistent data)的大小。默认值为0。而且所能配置的额外存储区大小常常会根据实体机器的不同而不同。
MicroEdition-Profile执行此MIDlet Suite 所需的profile名称及版本。格式为:“Profile名称-Profile版本”。如:MIDP-1.0、MIDP-2.0。如果Profile与VM所提供的版本不兼容,应用程序管理器就会拒绝MIDlet Suite安装。此属性值可以是多个Profile版本,彼此用空格隔开。如果其中一个属性值无法和VM所提供的版本兼容(或者VM根本不提供),那么应用程序管理器就会拒绝安装。
MicroEdition-Configuration执行此MIDlet Suite所需的configuration名称和版本。格式为:“Configuration名称-Configuration版本”。如:CLDC-1.0、CLDC-2.0。如果这个属性值所代表的configuration无法与VM兼容,那么应用程序管理器就会拒绝该MIDlet Suite的安装。
MIDlet-Delete-Confirm删除此MIDlet Suite之前,应用程序管理器必须显示给用户的确认文字。
        与安全相关的属性:
MIDlet-Jar-RSA-SHA1JAR文件的数字签名。
MIDlet-Certificate-<n>-<m>验证JAR文件用的安全证明。
MIDlet-Permissions执行此MIDlet Suite必要的权限。
MIDlet-Permissions-Opt执行此MIDlet Suite次要的权限。
        与OTA相关的属性:
MIDlet-Install-Notify应用程序管理器安装MIDlet Suite之后,用来报告安装结果的URL。
MIDlet-Delete-Notify应用程序管理器删除MIDlet Suite之后,用来报告删除结果的URL。
        与Push机制相关的属性:
MIDlet-Push-<n>与javax.microedition.io.PushRegistry类有关。

上面所提到的属性的属性值,MIDlet都可以在执行时通过javax.microedition.midlet.MIDlet.getAppProperty()取得。

MIDlet-Version属性的属性值中,微版本号可以省略,如果省略,会缺省为0。也可以都不指定,那么缺省为0.0.0。主、次、微版本号,取值范围都只能在0~99。

另外,这些属性不可重复。属性出现的顺序无关紧要。除了上面提到的预定义属性,还可以加入自定义的属性。自定义的属性不要以MIDlet- 和 MicroEdtion- 开头。

 

清单文件至少要包含以下几项属性:

  • MIDlet-Name
  • MIDlet-Version
  • MIDlet-Vendor
  • MIDlet-<n>
  • MicroEdition-Profile
  • MicroEdition-Configuration

描述文件的扩展名一定要是“.jad”,而且其MIME类型(MIME Type)为“text/vnd.sub.j2me.app-descriptor”,这个MIME类型在进行OTA时非常重要,关系到MIDlet Suite的下载和安装之控制权能否由浏览器转换到应用程序管理器上。描述文件的作用只是单纯地让应用程序管理器能够在下载JAR或安装JAR之前,先做些检查,确定机器上的环境是否符合要求。

描述文件至少要包含以下几项属性:

  • MIDlet-Name
  • MIDlet-Version
  • MIDlet-Vendor
  • MIDlet-Jar-URL
  • MIDlet-Jar-Size 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值