(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf_第1页
(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf_第2页
(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf_第3页
(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf_第4页
(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf_第5页
已阅读5页,还剩70页未读 继续免费阅读

(计算机软件与理论专业论文)基于j2me的移动web服务的研究与开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉理工大学硕士学位论文 中文摘要 随着通信和计算机技术的迅速发展,以及个人移动通信设备尤其是手机的 普及和分布式网络应用程序的需求的扩展,传统的直接面对面的商务洽谈和基 于p c 机的商务运作模式己不能满足人们商务甚至日常生活的需求。面对这种矛 盾,一种全新的基于移动设备的商务模型一移动w 曲服务正得到广泛的关注和 快速的发展。有了移动w e b 服务,企业内部就可以实现流动办公,提升企业或 个人的营运作业效率,同时针对广大终端用户,他们可随时随地获取所需的教 育、医疗、交通、饮食、商务和娱乐服务。 鉴于j 2 m e 和w 曲服务的一些优点,我们采用将这两种技术结合来进行 移动电子商务应用系统的研究和开发。 ( 1 ) 本文结合w e b 服务技术、j 2 m e 技术和x m l 消息流技术以及s v g 技 术介绍了如何构建移动w 曲服务系统,此系统支持应用的动态集成,具有很好 的可扩展性。同时,它应既支持传统的w e b 方式的浏览,也支持w a p 手机p d a 手机,j 2 m e 手机等多种无线终端设备。 ( 2 ) 为了更好的阐述这个动态集成的移动w 曲服务平台,本文在j 2 m e 和w 曲服务这两种技术的理论基础上,介绍笔者开发一个这两种技术结合的移 动w c b 服务程序。其中j 2 m e 用于手机端的开发,包括所有手机应用程序都必 须具有的三个要素:图形用户界面、输入输出及其与网络的连接;而w e bs e r v i c e s 则用于处理服务器端和客户端之间的交互、以及后台服务端程序的发布。 ( 3 ) 这个移动w 曲服务系统包括三个子模块:天气预报服务、购物车服务、 地图显示服务。文章简述了相关技术后,在第五和第六章详细说明该系统的实 现。重点结合源码介绍了w 曲s e r v i c e s 的发布,以及在手机端利用j 2 m e 进 行开发,包括线程的应用、会话的维持等。 关键字:w 曲服务,j 2 m e ,s v g ,w s a 茎坚墨三盔堂堕主茎堡丝苎 a b s t l 。a c t w i t ht h er a p i dd e v e l o p m e n to fc o m m 试c a t i o na n dc o m p u t e rt e c l m o l o g y m e p o p u l 撕t yo fm o b i l ec o m m u n i c a t i o ne q u i p m e n t ,a n dt 1 1 ee i l l a r g e m e n to fr e q u i r e m e n t f o rt h ea p p l i c a t i o ni n 山ed i s m b u t e dn e 柳o f k ,i tc a n tb es a t i s f i e dw i mm ep e o p l e b u s i n e s se v e nc i a i l vl i f bt h a t 血eb u s i n e s sf a i ro f 订a d i t i o m lf h c e t o f h c ea n dm e o d 啪t i o nm o d e lb a s e do np c f a c et ot l l ep r o b l e m ,an e wb u s i n e s so p e r a t i o nm o d e l b a s e do nt h em o b i l ee q u i p m e n ti sc o n c e m e dw i t l la n dd e v e l o p e dr 。【p i d ly o p e r a t i o n a n y w h e r ec a nb er e a l i z e df o re n t e r p r i s ew i mm o b i l ew 毫bs e r v i c e ,w m c hc a np r o m o t e t h ee n t e 中d s eo rp e r s o n a le 伍c i e n c v a tt h es 锄et i n l c ,t h ee n d u s e rc a ng e tt h e s e r v i c e so fe d u c a t i o n ,m e d i c a lt r e 咖e m ,廿a 街c , d i e t ,b u s i n e s sa n da m u s e m e n t w h e n e v c rp o s s i b l e f o rm e i ra d v a i l t a g e s ,j 2 m e 锄dw e bs e n r i c e sa r ea d o p t e di n 1 er c s e 8 r c ha 1 1 d d e v e l o p m e n tw 0 矗o f o l l rm o b i l ee - b u s i n c s ss y s t e m ( 1 ) t h em c o m m e r c e 口1 a t f i o ni sb 淞e do nw 曲s e r v i c e s ,j 2 m e ,x m lm e s s a 鼯 n o wa n ds v gi ts u p p o r t st l l ed y n a m i ci m e 肿t i o n ,i se a s yt 0e x p 甜l d ,a l l dc a i lb e a c c e s s e d 矗o md i 丘b r e mr n o b i l ed e v i c e s ,s u c ha s 、v a pb f o w s e r p d a ,m o b i l ed e v i c e w i 凼j 2 m e o r w 曲b r o w s 乱 ( 2 ) f o rab e t t e re x p l a n a t i o nf b rm ed y n a i i l i ci n t e 舯t e dm d b i l ew e bs e r v i c e s p l a t f o m l ,m ep 印c rl a y se m p h 船i so ni i l t r o d u c t i o nh o wt or e a l i z eam o b i l ew e b s e r v i c e sa p p l i c a t i o no nt h eb 鹅eo ft 、v ot e c h n 0 1 0 9 i e si n t e 肿t ej 2 m ea n dw 曲 s e r v i c e st e c l l l l o l o i :yt j 2 m et e c l l n o l o g yi su s e dt o ( 1 e v e l o pt l l em o b i l ec l i e n tt l l a tt l l e m r e eb a s i ce l e m e n t so fm o b i l ea p p l i c a t i o nd e v e l o p m e n t :u i i o ,a 1 1 dn e t w o r k c o 仰e c t i o n ,a n dw e bs e i c e st oa c h i e v em ec o m m u i l i c a t i o nb e t w e e nc l i e n ta n d s e r v e r ( 3 ) t h i ss y s t e mi n c l u d e sm r c es u b - n l o d l l k sm a ta r caw e a t h e rf o r e c a s ts e r v i c e ,a s h o p p i n g c a rs e r v i c ea n da d i s p l a y i n gm a ps e i c e w r i t c ri l l u s 仃a t e dt h e i 强i p l e m e n t a t i o no ft 1 l es y s t e mi nd e t a i la tm ef i r hc l 琊t e ra n ds i 】【t hc h a p t e r 世e r d i s c u s s e dt h er e l a t i v et e c h n o l o 画e s w h t e ri n t r o d u c e d wt op l l _ b l i s hw e bs e r v i c e s a 1 1 dh o wt od e v e i o pt h em o b i l ec l i e n tb yj 2 m eb ys h o 、i n 窖s o m ee x a c tc o d e t h e m o b i l ec l i e n td e v e l o p m e n ti n c l u d e sa p p l y i n gt 1 1 r e a d ,s e s s i o nm a i n t e n a n c ea n ds oo n k e yw b r d s :w e bs e 九,i c e s ,j a v a2 ,m i c r 0e d i t i o n ,s c a l a b l ev c c t o rg r a p l i c s ,w e b s e r v i c e sa p i i i 武汉理工大学硕士学位论文 1 1 课题概述 1 1 1 课题研究的背景 第1 章绪论 “w 曲服务将成为i t 业最具有潜力的领域”,b u n c rg r o u p 的创始人m a n i n b u t l e r 曾说,w e b 服务从概念的形成到产品的推出,在短短的几年内,己成为 i t 业的焦点和热点之一。 许多以前要到商场或别的地方才能做的事,现在在i i l t e m e t 上都可以做到。 我们可以在网上购物,可以收集大量的信息,可以不需要打国际长途就能与远 在异国的亲人朋友联系,而且还可以使用其它类型的服务。 我们将这些已经提供应用的服务集成起来,同时增加新的服务,从而使用 户在一台主机上使用尽可能少的软件访问尽可能多的服务。在提供最终服务的 “网络中,其各个组成部分自动地进行交互,将你所需要的东西准确交付给你。 这个目标正是m i c r o s o f i 的n e t 思想和s l l i im i c r o s y s t e m s 的s u n o n e 的动机。这 些思想和动机的目的是,不仅在连接到i n t e m e t 的桌面系统上提供服务,而且还 能在联网的移动设备上提供服务。 近年来随着因特网与移动通讯技术的高度融合促进了移动网络服务的产 生。利用现有的w e b 服务技术和移动通讯技术,在这两大平台上开发移动、v e b 服务应用成为现实。有了移动w e b 服务,以前只有在较大系统上才能提供的w e b 服务,现在在小型、移动、无线设备上同样可以获得。 1 2 课题研究的目的和意义 随着通信和计算机技术的迅速发展,以及个人移动通信设备尤其是手机的 普及和分布式网络应用程序需求的扩展,传统的直接面对面的商务洽谈和基于p c 机的商务运作已不能满足人们商务甚至日常生活的需求。有了移动w 曲服务, 企业内部就可以实现流动办公,提升企业或个人的营运作业效率,同时针对广 武汉理工大学硕士学位论文 大终端用户,他们可随时随地获取所需的教育、医疗、交通、饮食、商务和娱 乐等服务。 w e b 服务以其独特的优势正逐渐的得到广泛推广和应用,而作为移动设备 的主要开发工具之一j 2 m e ,一开始就是为移动设备开发而量身定做。所以 以j 2 m e 为开发工具进行移动w 曲服务开发,是实现手机移动商务的一个有效 途径。 然而,由于手机在处理能力、内存、带宽、连网方式等方面的限制,利用j 2 m e 进行无线应用开发与桌面或企业计算应用开发有很大的不同。对桌面和企 业计算应用来说,开发平台通常与部署环境相同,任何人都可以通过高速有线 网络与应用系统建立联系。但无线设备的情况恰好与之相反,在过去很长一段 时间里,无线设备都处于处理器性能低下、内存和图形用户接口资源有限、网 络连接速度慢而不可靠的状况中。 这些问题与几年前拨号上网用户遇到的情形一样在w e b 页面上有丰富内 容,但需要太长的下载时间或者是使用不同的浏览器时无法很好地浏览页面。 由于移动设备无线上网的特性,它对h t t p 等连接协议的支持不如桌面设 备稳定和全面。如j s r l7 2 不支持u d d l 2 o ( 统一描述、发现和集成规范) ,这 样服务端的注册、客户端查找等都需要有特殊的处理。 总之本课题希望能通过对现有网络连接及会话管理等加以分析、比较并做 出相应的调整或修改,探索出一套完整的真正能够应用于移动w e b 服务的模式, 能切实的应用于移动商务的发展。 1 3 国内外的研究现状和水平 w e b 服务是近几年刚发展的项新技术,在短短的几年内无论是在国外还 是在国内都得到了广泛的关注和迅速的发展。而移动w e b 服务的起步也仅仅是 在2 0 0 1 年才开始,不过,它的发展也相当迅速。 1 3 1 国外研究现状 在上世纪9 0 年代中期,有学者开始探索移动设备与电子商务的集合,并于 1 9 9 7 年9 年发布了w 神标准架构,但由于w 廿只支持w m l 页面等致命伤, 决定了w a p 只能是一个美丽的错误。到2 0 0 0 年各大软件公司和移动设备制造 武汉理工大学硕士学位论文 商开始另辟蹊径。s u n 在j 2 s e ( j a v a2 ,s t a n d a r de d i t i o n ) 基础上推出了针对于 移动设备的技术平台j 2 m e ( j a v a2 ,m i c r oe d i t i o n ) ,并在短短的2 3 年内,取 得了长足的发展,其规范就由c l d c l o 和m i d p i o 发展到现在的c l d c l 1 和 m ) p 2 o 。 2 0 0 3 年6 月1 0 日,s u l l 宣布与世界顶级的四大手机诺基亚、摩托罗拉、西 门子和索尼爱立信生产商共同合作,开发适用于m i d p 2 o 技术标准的j 2 m e 技 术。当然这些规范也得到了包括移动通讯营运商的大力支持和广泛推广,并逐 渐成为行业标准。继s l l i l 公司推出j 2 m e 之后,高通公司和微软分别推出b r e w 和n e t 移动版,s l l i l 公司于2 0 0 3 年夏推出了基于j 2 m e 的w e b 服务规范j s r 1 7 2 。在国外移动w e b 服务正受到比较重视的研究。 1 3 2 国内研究现状 在国内随着第三代( 3 g ) 移动通讯战略的发展,移动商务平台也受到很大 的关注。但这些研究主要是由移动通讯运营商进行的。到目前为止,中国联通 基于b r e w 平台所开发的商用程序包括:a d v e n n l r e f 环球历险记) 、a n yf l a s h ( 安 凯软件) 、c i t y0 n l i n e ( 都市在线) 、e 4 es t o c k ( 股票) 、s u ce s c ( 星际生存) 、钿 m i n gb a s k c t b a l l ( 姚明篮球) 等。以及一些小的连网手机游戏。在高通公司宣布整 合b 砌! w 和j 2 m e ,其c d m a 手机平台也开始支持j 2 m e ,联通公司也推出了 基于j 2 m e 的小游戏。2 0 0 4 年9 月,以联想为代表的国内手机制造商宣布开始 研制支持m i d p 2 o 的手机,并在其网站上提供小型的用于手机的w 曲服务程序 下载。同时安富软件等软件公司也开始着手这方面的研发。但总体来看,真正 的移动w 曲服务实现都集中在一些专业系统软件上。可以说国内在这方面的研 究尤其是在安全性方面的研究还处于相对落后的地步。 1 4 作者所做工作 在对本系统进行设计和对论文进行撰写的过程中,作者参考了大量的相关 文献资料,并利用网络资源解决了许多技术难点,重点研究和探讨的内容包括: 对移动w e b 服务的现状和发展趋势进行分析。 对目前手机上的主流开发平台j 2 m e 技术在手机应用程序中的应用进 行研究。 武汉理工大学硕士学位论文 对w 曲服务技术及其在手机应用程序中的应用进行说明。 在对移动电子商务、j 2 m e 技术和w e b 服务技术进行理论剖析的基础 上,将j 2 m e 技术与w e b 服务技术相结合这一思路应用于实践中,完成了一个 系统的开发。 1 5 本论文的结构 本论文的组织结构大致如下: 第一章介绍了一下论文的背景情况。 第二章是关于j 2 m e 技术的概述,主要介绍了j a v a2 平台的分类、什么是 j 2 m e 及其体系结构,重点在于m i d p 的介绍。 第三章介绍的是w e b 服务技术,主要说明了w e b 服务技术的几个基本概 念及其模型以及w 曲服务技术在j 2 m e 平台中的应用:t h e j 2 m ew 曲服务 a p i s ( w s a ) 。 第四章重点介绍了s v g 技术,主要说明了x m l 解析的工作原理。 第五章是关于手机应用程序开发分析,介绍了手机m i d p 应用程序开发步 骤及本项目的需求分析,包括各模块的顺序图。 第六章是对本项目应用程序的分析,由于作者在本系统开发过程中主要针 对的是手机客户端应用程序的实现,所以重点介绍了在客户端利用j 2 m e 进行 开发时的一些关键问题的处理,包括线程的实现和长字符串的处理、会话的管 理,中文乱码以及j 2 m e 对s v g 图形的坐标转换等。 第七章是结尾部分,对前面所做工作进行总结,同时对本系统中不完善的 部分进行分析,以便在下一阶段的开发中对其进行改进。 4 武汉理工大学硕士学位论文 第2 章j a v a2m i c r oe d i t i o n 概述 随着无线通信技术的飞速发展和普及,移动电话、p d a 、掌上电脑等移动 设备已逐渐走进人们的生活,成为人们在商务活动和日常生活中不可缺少的帮 手。现在我们身边的大部分人都拥有一部手机,其拥有量早已超过了p c 机。如 今伴随着网络的加宽,在移动通信领域,各运营商都在部署自己的第三代( 3 g ) 移 动通信战略,各手机生厂商也都在开拓新技术以及业务的实现。随着互联网接 入设备技术的发展,互联网将更加普及,通过个人电脑之外的接入设备( 手持 设备、移动电话、机顶盒等) 上网将最终超过目前的传统个人电脑方式。 2 1 概述 s u n 公司自1 9 9 5 年推出j a 、,a 平台后,已经发展到j a 、,a2 的版本,为了 适应不同级别计算机硬件的开发需要,j a 、,a 平台形成了三个主要分支【1 1 2 】【1 3 】: j a v a2 ,s t a n d a r de d i t i o n ( j 2 s e ) :是为台式机而设计的,主要运行在l i n u x , s 0 1 a r i s ,或m i c m s o f i 、i n d o w s 等操作系统上,这个版本实现了所有j a v a 标准 规范之中所定义的核心类库。 j a v a2 ,e n t e i p r i s ee d i t i o n ( j 2 e e ) :是一个适合分布式的、多用户、企业级 应用系统运转的平台。它以j 2 s e 为基础,增加了处理服务器端计算的功能。它 是一种利用j a v a2 平台来简化企业解决方案的开发、部署和管理相关的复杂问 题的体系结构。 j a v a2 ,m i c r oe d i t i o n ( j 2 m e ) :和j 2 s e 不同,它既不算是一个软件也不能 算是一则规范。准确地说,j 2 m e 是为了支持p d a 、手机等小型的嵌入式或移动 设备而推出的一系列的技术和规范的总称。它借用了j 2 s e 类库的一部分,使用 了更少的a p i ,而且其j 2 m e 采用的j a 、,a 虚拟机( j v m ) 比j 2 s e 的m 也要 小得多。 图2 1 显示了这三个版本的构成。 武汉理工大学硕士学位论文 图2 1 j a v a2 平台结构 2 2j 2 m e 平台介绍( 1 】( 2 】 3 【4 】 j 2 m e 是针对嵌入式设备及消费类电器的j a 、,a 版本,由于这类设备和产品 的差异性很大,所以j 2 m e 采用配置层( c o n 趣阻r a t i o n ) 、简表层( p m f i l e ) 和可 选包的模块化体系结构来满足开发者的需求。j 2 m e 体系结构如图2 2 所示: 图2 2j 2 m e 体系结构框图 壁坚堡三奎堂堡主堂垡笙苎 2 2 1 配置层 配置层包括虚拟机( v i n i l a lm a c i l i n e ) 、核心的类库与a p l 配置层向开发人 员提供了一个最基础和最核心的j a v a 平台。它将基本运行时环境定义为一组核 心类和一个运行在特定类型设备上的特定j v m 。 当前j 2 m e 存在两种配置。它们是根据设备的硬件性能进行区分的,例如 处理器、内存容量等。由于这个标准是在2 0 0 1 年的时候指定的,而现在移动终 端的处理能力和内存容量发展很快,如果还按照这个标准来评判可能就不准确 了。 ( 1 ) 连接限制设备配置( c l d c ) 与k v m 一起用于内存有限的1 6 位或3 2 位设备。这是用于开发小型j 2 m e 应用程序的配置( 虚拟机) 。c l d c 同时 还是用于开发绘图工具应用程序的配置。p a l m 电脑便是一个运行小应用程序 的小型无线设备的示例。 c l d c 的基本属性描述: 1 6 0 k b ( 1 1 ) 内存用于运行虚拟机和基本类库: 3 2k b 内存用于运行时内存分配; 1 6 位或者3 2 位处理器; 有限的用户界面: 使用电池供电; 无线网络连接,低带宽; c l d c 使用的是k v m ( n ekv i r t u a lm a c h i n e ) ,称为k 虚拟机,为适应资 源有限设备的特性,k 订己经按以下方式修改: 虚拟机的大小和类库己减小为5 0 8 0 k b 目标代码的标准: 存储器占用己经减小为几十k 字节的标准: 在具有1 6 位和3 2 位处理器的设备上,性能有效: 体系结构是高可移植的,基于特定机器和平台的代码很少; 多线程和垃圾回收是独立于系统的: 可以对虚拟机的组件进行配置,以适合于特定设备。 ( 2 ) 连接设备配置( c d c ) 与c 虚拟机( c v m ) 一起使用,用于要求内存 超过2 兆的3 2 位体系结构。电视机顶盒便是这类设备的一个示例。 c d c 的基本属性描述: 武汉理工大学硕士学位论文 最少要有5 1 2 k 内存运行j a v a 程序 最少要有2 5 6 k 作为运行时动态需要内存 网络具有连接性、持久性和一定的带宽 由于c d c 的内存较大、处理能力较强,所以规范采用了内存优化的虚拟机, 也就是所谓的c v m ,通过它提供等同标准j 的特征。 2 2 2 简表层 为了给特定范畴的设备提供全面的运行时环境,配置必须和高级的j a 、,a 类 库组合。这些高级的类库由简表定义。在配置的基础上,简表进一步定义了j a 、,a 应用的生命周期模型、用户接口以及对设备专有属性的访问等。 目前j 2 m e 定义了四个简表:m i d p ( m o b i l em f o m l a t i o nd e v i c ep r o f i l e , 移动信息设备简表) 、f p ( f o u n d a t i o np r o f i l e ,基础简表1 、p p ( p e r s o n a lp r o f i l e ,个人简表) 和i m p ( h f o 姗a t i o nd e v i c ep r o f i l e ,信息模块简表) : m i d p :定义了针对移动信息设备( 主要指智能手机和一部分具有无线通信 功能的p d a ) 的核心应用功能,包括用户接口、网络连接、本地数据存储以及应 用程序的管理。m i d p 是目前唯一建立在c l d c 之上的描述。爻c l d c 组合在 起,m d p 为移动信息设备提供了一个完备的j a v a 运行时环境。现在m i d p 的最新规范是m i d p 2 0 。 i m p :定义了提供网络连接,但是显示方式比较单一的设备简表,例如告 警器。 f p 、p p 、p b p :c d c 之上的简表是分层的,可以根据需要在c d c 上添加 不同的描述,以满足不同类型设备的功能需求。 基础描述f p 是c d c 的最底层简表,它为没有用户接口的c d c 提供了网络 连接实现。f p 还可以与p b p 和p p 组合,为需要图形用户接口的设备提供完备 的j a v a 支持。 个人简表p p 面向需要丰富图形用户界面或者需要a p p l e t 支持的设备,它包 括全部的j a v aa w t 库并提供与桌面环境一样的w 曲支持。 个人基本简表p b p 是p p 的一个子集,它为支持基本图形功能的网络连接设 备提供j a v a 应用环境。p p 和p b p 位于c d c 和f p 之上,其功能的实现需要后 二者的支持。 8 茎堡墨三盔堂堡主堂焦丝苎 2 2 3 可选包 由于设备的条件限制j 2 m e 并没有把所有可使用的功能包全部加载到一个 描述中来,而是将一些满足于特定功能的a p i 作为一个单独的规范来发布。这 些规范可以满足于特定市场的需求。现在已经有很多这种可选包规范如:j s r 2 0 5 :w m a f w i r e l e s sm e s s a 西n ga p i ) ,j s r 8 2 :b l u e t o o ma p i ,j s r 7 5 :p d ao p t i o n a lp a c k a 站,j s r l 7 2 :j 2 m ew 曲服务1 o 等等。 通过将各种可选包与c l d c 、c d c 以及相应的描述组合在一起,j 2 m e 平 台的功能可以进一步得到扩展。由于可选包是模块化的,所以设备制造商可以 根据不同设备的功能需求在设备中加入相应的可选包。 2 - 3c l d c 简介7 2 3 1c l d c 溉述 2 0 0 0 年5 月,j a v ac o i n m u n j t yp r o c e s s ( j c p ) 公布了c l d c ( c o n n e c t e dl i m i t e dd e v i c ec o n f i g u r a t i o n ) 1 o 规范( 即j s r 3 0 ) 。作为第一个面对小型设备的 j a v a 应用开发规范,c l d c 是由包括n o k i a ,m o t o r o l a 和s i e m e n s 在内的1 8 家 全球知名公司共同协商完成的。c l c 是j 2 m e 核心配置中的一个,可以支持一 个或多个简表。 2 3 2c l d c 的硬件需求 由于c l d c 要面向尽可能多的设备,而这些设备所使用的硬件又各不相同。 因此c l d c 规范中并没有指明需要某种硬件支持,只是对设备的最小内存进行 了限制。c l d c 规范中要求硬件必须达到以下要求: 至少1 6 0 k b 的固定内存以供虚拟机和c l d c 核心类库使用。 至少3 2 k b 的动态内存以供虚拟机运行时使用( 堆栈等) 。 这里所说的固定内存是指拥有写保护,不会因关机而抹去的r o m 。对于具 体设备的具体实现,这些需求也可能有变化。这里所规定的1 6 0 k b 是c l d c 规范中的要求,实际也可以是1 2 8 k b 左右。 9 武汉理工大学硕士学位论文 2 3 3c l d c 的软件需求 和硬件类似,c l d c 上运行的软件也是多种多样的。例如,有些设备支持 多进程操作系统或者支持文件系统;而有些功能极其有限的设备并不需要文件 系统。对于这些不确定性,c l d c 只定义了软件所必须的最小集合。c l d c 规 范中要求操作系统不需要支持多进程或分址空间寻址,也不用考虑运行时的协 调和延迟;但是必须提供至少一个可控制的实体来运行虚拟机。 2 3 4c l d c 的功能范围 在c l d c l o 版本中定义了以下功能: j a v a 核心语言与j a v a 虚拟机的特性; 核心j a v a 类库; 输入输出: 对网络的支持; 对安全性的支持; 对国际化的支持。 c l d c 不包含的功能: 对应用程序生命周期的管理; 用户界面; 事件处理; 高级应用程序模式( 这里指用户与应用程序的交互) 。 2 3 5c l d c 的类库 c l d c 只有四个包: j a v a 1 a 1 1 9 ( j a v a 编程语言的基本类) ; j a v a u t i l ( 集合、日期和时间支持、各式实用工具类) ; j a v a i o ( 基本输入输出) ; j a v a ) ( m i c r o e d i t i o n( 通用连接框架:g e n 甜cc o i l n e c t i o nf 舢e w o r k ) 。 除了j a v a x 面c r o c d i t i o n 包以外,其它的几个包都是j 2 s e 包的核心子集。 可以把c l d c 的类库看作是j 2 s e 的一个小的子集,即j 2 s e 包含c l d c 。c l d c 采用这些j 2 s e 类库,但是把其中一些在微型设备中用不到的类、属性和 l o 武汉理工大学硕士学位论文 方法去掉了。同时c l d c 并末完全包含于j 2 s e ,它还包括一些专门针对无线 设施的类。 c l d c 中唯一新增的j a v a x m i c m e d i t i o n 包定义了一个通用连接框架( g e n e r i cc o n n e c t i o nf r 眦e w o r k ,g c f ) ,它提供了与j a v a i o 和j a v a n e t 的同样功 能。通用连接框架可以看成是构造通讯驱动的框架,且并没有定义对任何特定 扔议的支持。 2 4 m i d p 简介1 o 【1 1 】 2 4 1 硬件需求 移动信息设备的硬件要求很简单,主要有以下几点: 单色或彩色显示器,最小尺寸9 6 5 4 像素: 用户的输入机制:电话小键盘或触摸屏; 双向、无线、可间断、带宽有限的网络连接能力; 最少1 2 8 k b 永久存储空间用于m i d p 系统软件,8 k b 用于应用程序 定义的存储空间,3 2 k b 内存用于j a v a 运行时堆的使用。 2 4 2 软件需求 支持m i d p 的设备应该能做到以下几点: 管理硬件的最小内核( 即处理中断、异常和小型调度等) ,并能提供运 行k v 】虚拟机的线程: 提供读写永久存储空间,可以访问无线网络可以显示输出等: 能接受按钮或触摸屏事件的触发功能: 提供基于时间操作的基本机制,以支持持久存储操作; 实现m i d p 应用程序的生存周期即安装、选择、启动、关闭和删除的 管理。 m i d p 定义了针对移动佰恳处理设备( 主璺捂智就手机和一邵分具有尢线通 信功能的p d a ) 的图形界面、持久性存储、输入和时间处理、无线电话网络连 接之上的一些消息处理( 例如短消息) 、安全等a p i ,并且考虑到了移动信息设 备的屏幕和内存限制。类似于j 2 s e 中的a p p l e t 框架,m i d p 提供了基于j a v 茎望墨三查堂堡主兰垡笙兰 a x _ m i c r o e d i t i o n m i m e t 包的m i d l e t 应用程序框架。 2 4 _ 3m i d pa p i m i d pa p i 由以下包组成: 核心包:c o r ep a c k a g e s ( j a v a i o 、j a v a 1 盐卧j a v a - u t i l ) :它们是c l d c 和m i d p 的基础,用来定义c l d c 和m i d p 所使用的j a v a 语言、 提供输入输出接口,并为编写应用程序提供一些实用工具。 j a v a x 1 1 1 i c m e d i t i o n 1 c d u i :针对手机等移动信息设备的用户接口a p i 。 j a v a x m i c m e d i t i o n 皿s :提供一种存储机制,m i d l e t 用它来持久存储 数据,并能在以后重新获取数据。 j a v a x 肌i c r o e d i t i o n m i d l e t :定义移动信息设备配置文件应用、应用之间 的交互以及应用所运行的环境。 j a v a x m i c r o e d i t i o n i o :提供网络支持,它是以来自c l d c 的通用连接 框架为基础的。 2 4 4j a r 文件和j a d 文件简介 在编写好j 2 m e 源文件后,我们还要继续进行如下工作:编译、混淆( 可 选) 、预审核、打包。打包后,将获得一个i a r 文件。接下来为j a r 文件编写一 个以j a d 为后缀的描述文件。最后通过各种途径将j a r 文件、j a d 描述文件传输 到移动设备上运行即可。 在具体介绍j a r 和j a d 之前,首先解释几个名词。 j 朋v i ( j a v aa p p l i c a t i o nm a i l a g c r ) 一般翻译为应用程序管理器。在有些文档 中,j a m 也被叫做a m s ( 印p l i c a t i o nm a i l a g e rs o 腑a r e ) 。j a m 是管理移动设 备上所有j 2 m e 应用程序的软件,负责j 2 m e 应用程序的下载、安装、更新与 删除。 m i d l e t :一个可以执行的应用程序基本单位。除了继承j a v a ) 【_ m i c r o e d i t i o n i i l i d l e t m i d l e t 外,还包括让此类顺利执行的所有其它类和资源文件( 凡是非c l a s s 文件都称为资源文件) 所构成的集合。 m i d l e ts u i t e 简单理解是m i d l e t 程序的一个集合。m i d l c ts u i t e 包含了一 个或多个m i d l e t 、资源文件以及j a rm a n i f c s t ,这些内容被打包成一个j a r 包。 武汉理工大学硕士学位论文 通常情况上讲m i d l e ts u i t e 还需要一个外部的j a d 描述文件。m i d l e ts u i t e 是为了解决多个m i d l e t 受控访问、共享资源的问题而提出的模型。对于设备来 讲m d l e ts u i t e 是一个基本单位。 j a r 文件( i a r 文件) :包含m i d l e ts u i t e 的文件,属于压缩格式,包括下 面各种元素: 1 ) 实现m i d l c t 的类文件; 2 ) m i d l e t 中用到的任何资源文件( 包括图像、声音文件等) ; 3 )关于j a r 内容的一份j a ri r 珀n i f e s t 描述。 j a d 文件( 描述文件) ;用来描述m d l e ts u i t e 基本信息的文本文件包 括与m d l e t 相关的信息( 类名称、程序名、图标) ,或是m i d l e ts u i t e 的整体 信息( 文件大小、证书、安全权限等) ,这是一个独立存在的文件。 一个完整的m i d p 应用程序,是由一个j a d 文件( 纯文本文件) 与j a r ( z 碑压缩文件) 所组成。 j a rm a n i f e s t : 根据m d p 规范的规定,每个m i d l e ts l l i t e 的j a r 文件中必须包含一个名 为m a i l l i f c s t m f 的文件,这个文件用于描述m i d l e ts u i t e 的各种属性。其中,必 须包含以下属性: 袁2 1j a rm a i l i f e s t 必须包含的属性 属性名说明 m i d l e t _ n 黜e m i d l e ts u i t e 的名称。 m i d l e t v 钒i o nm d l e ts u i t e 的版本号,格式为主版本、次版本、微版本, 版本号主要用于安装或升级。 m ) 1 e t v j n d o rm d l e ts u i t e 的提供商。 若j a d 描述文件中未提供下列属性,则j a ri n a n i f e s t 必须提供这些属性: 表2 2j a rm i f e s t 额外包含的属性 属性名 说明 m i d l e t 用来描述m i d l e ts u i t e 中所包含m i d l e t 的信息。 属性值格式:应用程序名称,图标,类名称( 以逗 号间隔) ,类名称为m i d l e t 的类文件名。 m i c r o e d i t i o n p r o f i l em i d l e ts u i t e 所需要p r o f i l e 的名称及版本号。 m i c r 0 e d i t i o n c o n f i g u r a t i o m i d l e ts u i t e 所需要c o n f i 舯t i o n 名称及版本号。 武汉理工大学硕士学位论文 j a d 描述文件:对于m i d p 2 o 系统,在下载j a r 文件前,会先下载j a d 描述文件,以让设备了解该m i d l e ts u i t e 是否适合自己。避免直接下载j a r 文件导致大量的成本消耗。这也是设计j a d 描述文件的初衷之一。另一个目的 就是提供在不更改j a r 的前提下修改某些属性值的能力。j a d 描述文件为纯文 本文件,文件扩展名为j a d 。j a d 描述文件必须提供如下属性: 表2 3j a d 描述文件必须提供的属性 属性名说明 m l l e t n a m em d l e ts u i t e 的名称 m i d l e t v e r s i o nm i d l e ts u i l e 的版本号 m i d l e t v j n d o rm i d l e ts u i t e 的提供商 m i d l e t j a r u r l下载该m d l e ts u i t e 的u r l 地址 m i d l e t j a r _ s i z e j a r 文件的大小,计算单位为字节 j a d 描述文件与j a rm a 咀i f e s t 的关系:两者中都包括了三个相同的必备属 性:m i d l e t _ n a m e 、m i d l e “v e r s i o n 、m i d l e t - v e n d o f 。m d p 规范规定,如果j a d 描述文件及j a rm a i l i f e s t 中这三个必备属性有任何不同的话,j a m 是不会 安装该m i d l e ts u “e 的。 2 4 5m i d l e t 应用程序的生命周期 每个m i d p 的应用程序模型m i d l e t 都是类i a v a x i i l i c r o e d i t i o n 埘d l e t m i d l e t 的扩展,它是被j a m 管理的。j a m 负责m i d l e t 的安装、下载、运行和删除等 操作。在被j a m 管理的同时,m i d l e t 可以和应用管理软件通信,通知应用管理 软件自己状态的变化。一个m d l e t 在其生命期中,可以处于以下任意状态: 装载( l o a d e d ) :当用n e w 关键字创建m i d l e t 时;便处于此状态。一个m i d l e t 的每个实例只能出现一次该状态。如果出现异常,m i d l e t 就会被消除。 暂停( p a u s e d ) :当m i d l e t 已被初始化,但还没有占有任何共享资源时的状 态。 激活( a c t i v e ) :当m i d l e t 被初始化后,并开始执行正常功能时,便从暂停 状态进入此状态。 被销毁( d e s 仃o y e d ) :当m i d l e t 被销毁,所有资源都释放后进入该状态。 在启动一个m i d l e t 的时候,j a m 会首先创建一个m j d l e t 实例并使它处于 武汉理工大学硕士学位论文 p a u s e 状态,当s t a r 认p p ( ) 方法被调用的时候m i d l e t 进入a c t i v e 状态。在a c t i v e 状态调用d e s t r o y a p p ( b 0 0 1 e a i lu n c o n d i t i o n a l ) 或者p 肌s e a p p ( ) 方法可以使得m i d l e t 进入d e s 仃o y e d 或者p a u s e 状态。在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论