1.3 简表层
简表层主要是为不同的生产商提供标准化的Java类库,实现的是Java应用程序接口的一个集合。如果把CDC和CLDC理解为硬件配置,简表可以理解为硬件上的操作系统。目前在J2ME领域使用最广泛的是移动信息设备简表(MIDP),主要是针对手机和移动设备而设计的。
1.3.1 MIDP简表
移动信息设备简表(Mobile Information Device Profile,MIDP)是为类似手机和PDA这样的无线通信领域的嵌入式设备上的Java语言制定的规范。
MIDP是J2ME架构的一部分,它基于CLDC。规范内容主要是对适应于类似手机这样的产品的应用的Java API,但限于一些必须和很常见的功能,因此经常厂商会附加一些可选包以提供对更多功能的支持。MIDP部分地解决了无线终端产品上Java应用程序的兼容性问题。它主要定义了针对移动信息设备的图形界面、输入处理、数据存储,以及网络连接和安全等API,图1-4描述了MIDP的体系结构,其中从下到上各层依次介绍如下。
图1-4 MIDP的体系结构
·MID硬件层:主要包括手机或者双向寻呼机。
·本地系统软件层:包括由设备生产商提供的本地操作系统和系统库。
·KVM层:为Java无线应用提供了实时运行环境。
·CLDC层:为Java无线应用提供了核心Java API。
·MIDP层:提供了GUI、持续存储、网络等类库。
MIDP类库是建立在CLDC类库的基础上的,很多内容来自于J2SE,同时也增加了一些对移动设备的处理,常用的包及其所对应功能如表1-3所示。
表1-3 MIDP中的包及其所对应的功能
1.3.2 MIDP版本介绍
MIDP 2.0是在MIDP 1.0的基础上设计的,兼容MIDP 1.0中的所有功能,在其基础上为了满足不断发展的移动信息设备的需求,MIDP 2.0提出了一些新的特性。
MIDP 1.0对游戏和多媒体的支持很弱,在MIDP 2.0中增加了诸如按键状态查询、主动渲染和基本的声音支持等。MIDP规定了一些需要支持的具体网络协议类型:MIDP 1.0支持HTTP协议,MIDP 2.0补充了Socket、UDP、逻辑串口、HTTPS、TLS、SSL等。
MIDP 1.0 提供了以下功能。
·显示工具箱。
·用户输入方法。
·持久性数据存储(使用简单的面向记录的数据库模型)。
·基于HTTP 1.1的网络(使用CLDC通用连接框架)。
MIDP 2.0于2002年11月正式发布,MIDP 2.0的推出在一定意义上增强了J2ME的功能,主要体现在如下几个方面。
·支持操作图像的像素,支持Alpha通道。
·增强型的图形用户界面类CustomItem,提高了高级界面类的表现力。
·Media音频子系统填补了MIDP 1.0不支持声音播放的空白。
·Push注册机制和安全模型增强了对MIDlet的控制。
·游戏开发包提高了游戏开发的效率。
·联网能力增强,可以支持TCP/IP甚至是UDP层的通信。
·支持OTA,使用户能够动态更新移动设备的程序。
目前已经在制定MIDP 3.0的规范,目的是通过利用高性能的机器从而在移动领域获得更大的提升,当然MIDP 3.0制定的前提就是要兼容当前的MIDP 2.0。