JAVA手机编程技术
发布时间:2008/5/29 0:00:00 访问次数:384
1 引 言
随着通讯技术的发展及手机的普及,人们正在不断地给手机增加新的功能,其中,使手机实现一般只有pc机才具有的功能--下载各种程序并运行,是目前手机发展的一个重要方向。为此,人们提出了各种各样的解决方案,其中基于java的j2me方案无疑是最引人注目的。
java语言由于其平台无关、开放、网络功能强、面向对象、安全等特点,一经sun公司提出,就随着internet的发展而风靡全世界,在国外已成为软件开发人员的必修语言。特别是他的"一次编写、到处运行"的跨平台优点,对于手机领域来说更具有重要的意义。因为目前手机的种类繁多,各种厂商都有自己的标准,如何使他们能运行同一种标准的程序成为必须要解决的问题。采用java语言后,各种手机只要实现java虚拟机(jvm)就可以运行java程序,这种方法可以说是目前情况下最为理想的一种解决方案。
j2me(java 2 micro edition)是用于嵌入式系统的java,他是sun公司对标准的java版本j2se做了最大程度的精简后得到的一种java应用程序运行环境,在最简单的情况下他只有几十kb,特别适合在手机、pda等设备中使用。手机厂商如果在自己的手机中实现了j2me规范,就可以从网络下载并运行java程序,从而大大扩展了手机的功能。鉴于java在internet上取得的巨大成功,我们有理由相信,j2me能够把这种成功延伸到手持设备领域,为将来的手机和互联网融为一体提供有利的条件。
java手机的出现也给软件行业提供了新的机遇,能否给java手机提供足够多的软件资源是关系到其能否推广的重要因素之一。本文对j2me构架做一个简单的介绍,并通过一个具体的程序例子来说明java手机程序的特点及开发过程。
2 j2me概述
j2me是一种新的、非常小的java应用程序运行环境,他所定义的构架主要用于在手持式设备上推广使用java技术。sun公司将为各种硬件规模的设备提供合适的配置,这些配置包括虚拟机、核心类库及api。目前,j2me定制了2种配置:cldc(connected limited devices configuration)和cdc(connected device configuration)。其中,cldc是为手机等cpu和内存资源远低于标准java要求的设备所提供的一种配置,他是对java标准版本做了最大程度的缩减后得到的,其虚拟机和核心类库多于100kb。cdc配置主要用于拥有更多资源的下一代设备。
cldc配置给各种手持设备提供了能运行java程序的一种环境,但开发者还很难在这种环境下开发程序,首先因为cldc核心库提供的是低级api,不适合直接用于构建应用程序;其次,手持设备的系统结构千差万别,很难保证应用程序的图形界面、网络等功能的移植性。因此,为了进一步增强j2me的功能,sun公司允许设备供应商在实现cldc的基础上再为自己的设备提供专门的高级api及程序管理方法,即profile,以简化应用程序的开发,使程序有更好的移植性。同时,sun公司还与50多家知名的移动设备制造商及软件开发商一起,制订了专门用于手机等移动信息设备的profile--midp (mobileinformation device profile),由于midp提供了编写图形界面、网络程序的统一规范,并实现动态、安全的程序管理方法,因此得到了诺基亚、摩托罗拉、西门子等主要手机厂商的支持,纷纷推出了基于midp的java手机。
与applet相似,midp程序也称为midlet,他必须要继承一个特定的类--midlet,这样midlet管理者才能控制他的运行。这个类包含了startapp,pauseapp,destoryapp三个用户可以重载的方法,分别在midlet进入运行状态、停止运行、退出时调用。
midp程序的图形接口相对于标准java的awt接口要简单得多,他分为低级api和高级api。低级图形api使开发者能更直接地控制屏幕显示和键盘输入,他基于抽象类canvas,一般用于编写游戏程序,他的可移植性要由开发者自己保证。高级图形api能在不同设备之间有很好的可移植性,但开发者能调整的余地也相应地很小,他基于抽象类screen,并有
alert,form,list,textbox四个具体的子类,这4个子类分别表示警示框、表单、列表框、文本输入框。另外,高级api还提供了许多图形组件,包括command,choicegroup, datefie1d, gauge, imageitem,stingitem,textfield等,他们都可以添加到a1ert和
form中。有些图形组件还提供了与awt相似的事件及事件响应处理方式。
midp程序一般要和各种资源文件一起压缩成一个jar文件。发布时,还需要有一个扩展名为jad的描述文件,他包含了midp程序的名称、版本、jar文件的位置及大小等信息。java手机首先要访问的是描述文件,再根据描述文件的信息把midp程序安装到本手机,然后才能运行。
3 开发实例
midp程序真实的运行环境是java手机,但他的开发却是在pc机上进行的,
1 引 言
随着通讯技术的发展及手机的普及,人们正在不断地给手机增加新的功能,其中,使手机实现一般只有pc机才具有的功能--下载各种程序并运行,是目前手机发展的一个重要方向。为此,人们提出了各种各样的解决方案,其中基于java的j2me方案无疑是最引人注目的。
java语言由于其平台无关、开放、网络功能强、面向对象、安全等特点,一经sun公司提出,就随着internet的发展而风靡全世界,在国外已成为软件开发人员的必修语言。特别是他的"一次编写、到处运行"的跨平台优点,对于手机领域来说更具有重要的意义。因为目前手机的种类繁多,各种厂商都有自己的标准,如何使他们能运行同一种标准的程序成为必须要解决的问题。采用java语言后,各种手机只要实现java虚拟机(jvm)就可以运行java程序,这种方法可以说是目前情况下最为理想的一种解决方案。
j2me(java 2 micro edition)是用于嵌入式系统的java,他是sun公司对标准的java版本j2se做了最大程度的精简后得到的一种java应用程序运行环境,在最简单的情况下他只有几十kb,特别适合在手机、pda等设备中使用。手机厂商如果在自己的手机中实现了j2me规范,就可以从网络下载并运行java程序,从而大大扩展了手机的功能。鉴于java在internet上取得的巨大成功,我们有理由相信,j2me能够把这种成功延伸到手持设备领域,为将来的手机和互联网融为一体提供有利的条件。
java手机的出现也给软件行业提供了新的机遇,能否给java手机提供足够多的软件资源是关系到其能否推广的重要因素之一。本文对j2me构架做一个简单的介绍,并通过一个具体的程序例子来说明java手机程序的特点及开发过程。
2 j2me概述
j2me是一种新的、非常小的java应用程序运行环境,他所定义的构架主要用于在手持式设备上推广使用java技术。sun公司将为各种硬件规模的设备提供合适的配置,这些配置包括虚拟机、核心类库及api。目前,j2me定制了2种配置:cldc(connected limited devices configuration)和cdc(connected device configuration)。其中,cldc是为手机等cpu和内存资源远低于标准java要求的设备所提供的一种配置,他是对java标准版本做了最大程度的缩减后得到的,其虚拟机和核心类库多于100kb。cdc配置主要用于拥有更多资源的下一代设备。
cldc配置给各种手持设备提供了能运行java程序的一种环境,但开发者还很难在这种环境下开发程序,首先因为cldc核心库提供的是低级api,不适合直接用于构建应用程序;其次,手持设备的系统结构千差万别,很难保证应用程序的图形界面、网络等功能的移植性。因此,为了进一步增强j2me的功能,sun公司允许设备供应商在实现cldc的基础上再为自己的设备提供专门的高级api及程序管理方法,即profile,以简化应用程序的开发,使程序有更好的移植性。同时,sun公司还与50多家知名的移动设备制造商及软件开发商一起,制订了专门用于手机等移动信息设备的profile--midp (mobileinformation device profile),由于midp提供了编写图形界面、网络程序的统一规范,并实现动态、安全的程序管理方法,因此得到了诺基亚、摩托罗拉、西门子等主要手机厂商的支持,纷纷推出了基于midp的java手机。
与applet相似,midp程序也称为midlet,他必须要继承一个特定的类--midlet,这样midlet管理者才能控制他的运行。这个类包含了startapp,pauseapp,destoryapp三个用户可以重载的方法,分别在midlet进入运行状态、停止运行、退出时调用。
midp程序的图形接口相对于标准java的awt接口要简单得多,他分为低级api和高级api。低级图形api使开发者能更直接地控制屏幕显示和键盘输入,他基于抽象类canvas,一般用于编写游戏程序,他的可移植性要由开发者自己保证。高级图形api能在不同设备之间有很好的可移植性,但开发者能调整的余地也相应地很小,他基于抽象类screen,并有
alert,form,list,textbox四个具体的子类,这4个子类分别表示警示框、表单、列表框、文本输入框。另外,高级api还提供了许多图形组件,包括command,choicegroup, datefie1d, gauge, imageitem,stingitem,textfield等,他们都可以添加到a1ert和
form中。有些图形组件还提供了与awt相似的事件及事件响应处理方式。
midp程序一般要和各种资源文件一起压缩成一个jar文件。发布时,还需要有一个扩展名为jad的描述文件,他包含了midp程序的名称、版本、jar文件的位置及大小等信息。java手机首先要访问的是描述文件,再根据描述文件的信息把midp程序安装到本手机,然后才能运行。
3 开发实例
midp程序真实的运行环境是java手机,但他的开发却是在pc机上进行的,