|
1 前言
我们要求手机和PDA等信息设备更为智能化、个性化,功能更加强大,能够方便地使用Internet资源。针对这种需求,Sun推出了Java袖珍版(Java
2 Platform Micro Edition,简称J2ME)。通过基于Java的移动增值服务,手机可以具有动态的内容、丰富的图像功能,可以下载并离线操作,可以智能地利用现有网络带宽,得到多种多样的服务。
2 J2ME介绍
Java
是 Sun Microsystems 公司在 1995 年中推出的一套程序语言兼平台。Sun 在JDK 1.2 版公开后将 Java
改名为Java 2,并重新定义了Java 技术的架构,将其分为3个版本:企业版(J2EE)、标准版(J2SE)、袖珍版(J2ME)。J2EE
适用于服务器,面向以企业为环境的应用程序的开发;J2SE 适用于一般的计算机,为桌面开发和低端商务应用提供了可行的解决方案;而J2ME
则适用于消费性电子产品,是致力于消费产品和嵌入式设备开发的最佳选择。
Sun把J2ME的实现分为两层:配置层(configuration)和框架层(profile)。
配置层包括虚拟机(virtual
machine)、核心的类库与API。配置层给开发人员提供了一个最基础,最核心的Java平台。
J2ME定义了两类设备:连接设备(connected
device)和有限连接设备(connected,Limited device)。连接设备是指那些有电源的、电力充裕、较大的设备,有
32位或 64位处理器,超过512k的存储器。例如:智能通信器、交互式数字电视机顶盒等。有限连接设备主要使用电池,小型的设备,具有16位或32位处理器,可用内存为160~512kB。例如:手机、PDA等。
对应上述两种设备有两种J2ME
配置,分别为CDC(Connected Device Configuration)和CLDC(Connected, Limited
Device Configuration)。CDC使用经典的JavaVM,而CLDC使用的是KVM(The K Virtual
Machine),称为 K 虚拟机。为适应资源有限设备的特性,KVM 已经按以下方式修改:
虚拟机的大小和类库已减小为50~80kB
目标代码的标准;
存储器占用已经减小为几十千字节的标准;
在具有
16 位和 32 位处理器的设备上,性能有效;
体系结构是高可移植的,基于特定机器和平台的代码很少;
多线程和垃圾回收是独立于系统的;
可以对虚拟机的组件进行配置,以适合于特定设备。
框架层也包含一组API,主要针对于特定的某一族系的设备而定义的。框架层在特定的配置层上实现,而应用则是建立在特定的框架层上。对于手机,PDA等CDLC设备的框架层称为移动信息设备框架MIDP(Mobile
Information Device Profile)。MIDP与CLDC合在一起就构成了一个完整的J2ME架构,详见图1。

图1 体系结构
如图1所示,最底层的部分(MID)代表移动信息设备硬件。在硬件设备之上是原生代码的系统软件,这一部分包括操作系统和系统使用的库文件。向上一层为CLDC。这部分代表KVM和由CLDC规范定义的相关库函数。这部分提供上层Java
API所需的最底层Java功能。在CLDC上有两种API :MIDP API和OEM特殊类API。OEM特殊类API扩展了MIDP所定义的功能,这些类可能由OEM
为某一给定的设备提供,是不可移植的。CLDC是MIDP和OEM特定类的基础。图1中最上面的一部分表示MID中可能的应用程序类型:
MIDP应用:是只使用MIDP和CLDC定义的API的应用程序。这种应用程序是针对MIDP规范开发的。是可移植的。
OEM特殊应用:OEM专用应用程序依赖于一些不属于MIDP规范的类。这些应用程序不可移植。
原生应用:不是用Java开发的,运行在MID和本地操作系统上。
3 基于Java的移动增值服务提供
基于Java移动增值服务的提供,涉及到一系列环节。包括移动用户、手机设备制造商、移动运营商、移动设备提供商、增值服务平台提供商以及内容提供商。基于Java的移动增值服务系统由三部分组成:手机终端设备、移动Java应用下载平台、移动Java应用。其中,手机终端设备需要提供虚拟Java运行环境(KVM环境),移动Java应用下载平台需要提供Java应用的下载、上载、管理、计费等功能,移动Java应用必须是根据Java标准开发的应用程序。
4 Java在移动服务中的优势
利用Java平台,手机功能开发周期可以大大缩短,程序可以很方便地移植到其他系统,手机可以升级,第三方开发者较易于介入手机功能的开发中。
用WAP的Browser方式访问Internet功能有限,不能直接访问Internet,需要Gateway过滤,只能显示WML,不能显示复杂格式图形,在线交易增加服务器负荷,速度慢,不能访问本地存储区。而用Java支持Client方式访问Internet可以直接访问Internet全部信息,而且可以实现较高效率的在线交易,可以访问本地存储区。这样电子邮件、股票、电子地图等都可以很好地实现。
可以说Java为用户带来了智能化、个性化的手机。用户可以从Internet下载新的服务和应用程序来定制自己的手机。手机可以具有动态的内容,丰富的图像功能,可以"离线"操作,享受服务,可以智能地利用现有网络带宽,得到丰富、多种多样的服务。
对于运营商来说,则有利于选择技术、商业模式,从而可以引导增值服务商的服务方向和内容,使广泛、多种多样的服务内容和商业模式成为可能,另外,因为Java服务独立于通信网络协议,使服务内容的跨网提供也成为可能。
随着Java平台的广泛使用,应用程序和服务的开发将更加容易。对于手机厂商、内容提供商、软件开发商,可以快速和简单地开发和更新服务内容/程序,可以快速地将产品推向市场。
5 基于Java的移动应用
基于Java的增值服务应用,有以下一些类型:
游戏娱乐:Java使得电话具有了丰富的图像能力,另外Java手机具有本地执行能力,这样游戏娱乐可以更有吸引力。
移动商务:手机用户可以通过手机进行购物,酒店/机票预定等,可以用Java开发出动态地显示数据和图表的应用,交易可以执行得更快捷、更简便,移动银行,股票信息和买卖的操作也变的更加迅捷。
信息:利用Java手机可以为用户提供个性化的、定制化的服务。由于Java手机上的应用便于使用,可视性强,使得电话成为用户接收他们关注的新闻和天气、交通等等信息的接收器,基于位置的服务也能更好地提供。
移动办公和企业服务:人们不使用笔记本电脑也可以收发电子邮件,可以参与公司的办公流程,进行文件的审批和查阅等工作。
电子出版:基于Java的无线服务的电子出版,可以让人们随时随地阅读最新的内容,享受阅读带来的乐趣。
6 移动Java服务发展情况
至2001年5月,已有超过350万部Java手机推向市场。据ARC
Group估计至2003年约60%的手机,也就是4.29亿部手机将是Java手机。据Evans Data Co 2001年的调查,超过33%的无线开发商要进行基于J2ME的开发。
日本NTT
DoCoMo 2001年1月26日推出I-appli Java手机服务,第一周即卖出23万部手机,至2001年12月9日共卖出超过960万部手机。推出服务时有36个内容服务提供商,约80%的内容为娱乐,至2001年5月,已超过5000种应用。
韩国LG电信的ez-l
CDMA项目,于2000年9月推出基于Java的服务,至2001年5月,手机用户超过50万,应用超过300个。70%的数据服务用户使用Java服务。
韩国4个移动运营商均已提供基于Java或Brew(高通公司推出的针对J2ME的竞争产品)的应用,据Softbank
Research 2001年预测至2005年韩国基于VM的业务将达6亿多美元。
美国Nextel
Communications、日本J-Phone(PDC)、日本KDDI(CDMA)、Sprint PCS、香港Hutchison、香港电信、台湾Far
Eastone、Omnitel、One2One、Telefonica、Vodafone等移动运营商都已经推出基于Java服务。
7 结论
建立基于Java的移动增值服务系统,手机用户可以通过Internet下载应用程序,得到丰富的、多种多样的服务,同时手机厂商、移动运营商、内容提供商都能从中受益。由此可见,基于Java的移动增值服务将能得到很好的发展,相信不久的将来,我们都能享受到Java给我们带来的生动的、个性化的移动增值服务。
---------------------------------------------------------------------------------------------
作者简介:
唐勇 1996年毕业于北京邮电大学,硕士。现就职于北京移动通信有限责任公司发展战略部。
|