




已阅读5页,还剩59页未读, 继续免费阅读
(通信与信息系统专业论文)基于j2me平台的手机应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理j :大学硕+ 毕业论文 摘要 在信息社会中手机及其它无线设备越来越多地走进普通老百姓的工作 和生活中。随着信息网络化的不断进展,人们不但希望手机有强大的通讯功 能,也希望它还能提供其它丰富的附加应用功能。传统的手机软件存在很多 弊端,而j 2 m e 平台由于自身的特点,如今己经成为手机应用程序开发的流 行平台。国内外越来越多的厂商在s u n 公司、摩托罗拉、西门子等公司的技 术支持下,开始开发基于j 2 m e 平台的无线应用服务。基于j 2 m e 平台的手 机应用开发已经成为热点。 本文以基于j 2 m e 平台的手机应用功能开发为线索,进行了相关理论研 究,实验和技术开发。主要包含以下工作: 1 ,研究介绍了j 2 m e 平台的用途和基于j 2 m e 平台手机开发的国内外 发展情况。 2 研究介绍了j 2 m e 平台的特性和体系结构。重点介绍了移动信息设 备描述( m i d p :m o b i l ei n f o r m a t i o n d e v i c e p r o f i l e ) 类库,应用程序的体系结构, 程序开发周期,工具和实例。 3 研究介绍了可扩展标记语言( x m l :e x t e n s i b l em a r k u pl a n g u a g e ) 。 重点介绍了x m l 优点,j 2 m e 中的x m l 解析器以及x m l 和j 2 m e 结合优点。 4 以如何在j 2 m e 环境下实现移动w e b 服务为例来对基于j 2 m e 平台 的手机应用程序开发做了一个详细的研究介绍。移动w 曲服务提供武汉公 交查询,天气预报以及新闻服务。在移动w e b 应用服务的设计开发中,本 文提出了结合j 2 m e 和x m l 来开发应用服务的方法,并且具体研究了如何 实现j 2 m e 和x m l 的结合。 关键词:j 2 m e ,x m l ,m i d p ,移动w e b 服务 武汉理1 :大学硕士毕业论文 a b s t r a c t t h em o b i l ea n dt h ew i r e l e s sd e v i c e sb e c o m em o r ea n dm o r ep o p u l a rw i t h t h ec o m m o n p e o p l ei nt h ei n f o r m a t i o na g e w i t ht h ed e v e l o p m e n t o ft h en e t w o r k p e o p l ew i s h t h a tt h em o b i l e sn o t o n l yh a v et h es t r o n gf u n c t i o no f c o m m u n i c a t i o n b u ta l s os u p p o r tl o t so ff u n c t i o n so fe x t r aa p p l i c a t i o n s w h e r e a s ,t h et r a d i t i o n a l m o b i l es o f t w a r eh a sl o t so f d e f e c t s ,t h ep l a t f o r mo f j 2 m eb e c o m e p o p u l a rw i t h i t se x c e l l e n c e m o r ea n dm o r e c o m p a n i e sb e g i n t od e v e l o pt h ea p p l i c a t i o n sb a s e d o nt h ej 2 m eu n d e rt h es u p p o r t & c o m p a n i e sl i k es u n ,m o t o r o l a r , s i m e n sa n de t c t h e d e v e l o p m e n t o f m o b i l e a p p l i c t i o n ss o f t w a r e h a sb e i n gh o t i nt h i s p a p e r , t h e a u t h o r p r o c e e d s i nt h e t h e o r ys t u d y , c o n d u c t s t h e e x p e r i m e n t s ,d e v e l o p s t h ep r o j e c t sc e n t e r i n gr o u n dt h ej 2 m e i tm a i n l yi n c l u d e s t h ef o l l o w i n gc o n t e n t : 1 t h i sp a p e ri n t r o d u c e st h eu s e n e s so fj 2 m ea n di t sd e v e l o p m e n ts t a t u s b o t hi nd o m e s t i ca n da b r o a d 2 t h i sp a p e rr e s e a r c h e st h ec h a r a c t e r i s t i c sa n dt h ec o n t r u c to ft h ej 2 m e , s t u d i e st h e c l a s so fm i d p , m i d pp r o g r a m sd e v e l o p m e n t sc y c l e ,m i d p p r o g r a m sd e v e l o p m e n t s t o o l sa n dm i d pp r o g r a m sd e v e l o p m e n t s i n s t a n c e e m p h a t i c a l l y , 3 t h i sp a p e rr e s e a r c h e st h ex m l nm a i n l ys t u d i e st h em e r i to fx m l ,t h e p a r s e ri nt h ej 2 m e a n dt h ec o m b i n a t i o no f t h e m 4 t h ep a p e rt a k e sh o wt or e a l i z et h em o b i l ew e bs e r v i c ea sae x a m a p l e t o i l l s t r u t et h e p r o c e s sh o w t o d e v e l o pt h ea p p l i c a t i o nb a s e do nt h e j 2 m e t h e m o b i l ew e bs e r v i c ep r o v i d e st h eb u sq u e r y , w e a t h e rf o r e c a s t a n dt h en e w s b r o a d c a s t i nt h em o b i l ew e bs e r v i c ea p p l i c a t i o n ,t h ep a p e rp r e s e n t st h em e t h o do f c o m b i n a t i o no f j 2 m ea n dx m l ,a n dr e s e a r c h e sh o w t or e a l i z et h ec o m b i n a t i o n k e y w o r d s :j 2 m e ,e x t e n s i b l em a r k u pl a n g u a g e ,m o b i l e i n f o r m a t i o nd e v i c e p r o f i l e ,m o b i l ew e bs e r v i c e 武汉理1 :火学硕士学付论文 1 1 国内外发展现状 第1 章绪论 在飞速发展的信息技术领域,移动通信和i n t e r n e t 是两支突飞猛进的支 柱产业。几乎所有和信息,电子,计算机相关的新技术,都被这两大支柱产 业吸收和采纳。 移动互连是移动通信和互联网的美妙结合。移动互连在其产生初期被称 为无线互连网。但是随着技术的发展,业界开始采用移动互连这个概念,目 的是为了强调i n t e r n e t 为正在移动的用户提供访问,移动的用户可以直接访 问i n t e m e t 。 在国内外,移动互连技术应用可谓十分火爆。出现了很多的新兴服务, 比如网上银行,网上证券,手机短信,移动商务,手机定位服务等。在日本, i - m o d e 是一种典型。它是d o c o m o 公司推出的一种移动电话服务,提供移 动电话和i n t e m e t 的持续连接。用户可以通过i - m o d e 手机在任何地方接收 电子邮件,下载流行音乐,聊天和游戏。这样的服务在日本吸引了很多的年轻 人,从而是d o c o m o 迈向世界顶级无线服务商。 在i - m o d e 的启发下,中国移动推出了移动梦网计划,将运营商,服务提供 商和设备供应商团结在一个价值链上。中国联通也推出了相应的业务现在 这些业务已经深入到人们的生活中。 移动互连技术有w a p , i m o d e ,j 2 m e 等。前两种技术存在一些缺点,比如 安全性,w a p 只能访问w m l ,不支持通用的h t m l ,而j 2 m e 技术可以解决这 些问题。j a v a 语言本身跨平台,j 2 m e 支持h t t p ,t c p 等高级协议,这些 特性使j 2 m e 平台已经成为无线设备的主导开发平台。国际著名咨询公司 g a r n e r 也指出,2 0 0 4 年,移动互连的主题是j 2 m e 。 据s u n 称,截至去年底,全世界已有一亿部以上的j a v a 手机,都可以 武汉理t 火学硕十学位论文 在g s m g p r s ,c d m a ,p d c ,i d e n 和w c d m a 等主要无线网络中使用。“目 前在亚洲、欧洲和美国,有超过2 0 家的通信运营商正在提供基于2 9 种j a v a 技术的移动服务。止p , # b 还有3 0 多家企业计划提供或正在试验性提供此类服 务”。此外,s u n 为了在中国提供基于j a v a 的无线数据服务,日前已经与中 国联通签定了战略合作协议。 为了促进j 2 m e 的进一步推广,s u n 公司还于2 0 0 2 年1 2 月2 日发布了 m i d p2 0 规范及其一系列的安装参考信息、兼容性测试套件和 “j 2 m e w i r e l e s st o o l k i t2 0 ”。新版本面向手机和p d a 等移动终端,提供了 如游戏、图形、视频、音频和安全等诸多新功能。s u n 公司称“利用m i d p2 0 , 设备制造商和服务提供商就能够更迅速且经济地提供易使用的、功能强大的 应用服务( 1 s 1 ”。在m i d p2 0 的支持下,有更多的开发商加入到开发基于j 2 m e 平台的无线应用服务的行列。如今,国内外越来越多的厂商在s u n 公司、摩 托罗拉、西门子等公司的技术支持下,开始开发基于j 2 m e 平台的无线应用 服务,主要方向为移动w e b 服务、手机游戏、动画屏保、电子图书、电子 漫画、电子地图、证券软件以及企业应用等。 当然,j 2 m e 也有众多的竞争者,比如m i c r o s o f t 公司的w i n d o w sc e 以 及它的n e t 移动版、p a l m 公司的开发平台等。但主要的竞争者是高通公司 的b r e w ( b i n a r y r t m t i m ee n v i r o n m e n tf o rw i r e l e s s ) ,其基本原理和j 2 m e 类 似,也是为设备配置一个应用程序的执行环境,屏蔽掉底层设备的复杂性和 多样性。b r e w 最初的目的只是为了测试高通公司推出的c d m a 技术和设 备,后来,高通公司发现移动互联网的商机无限,将b r e w 发展成为与j 2 m e 竞争的应用平台1 2 j 。 b r e w 的主要劣势在与实际的开发者不多,并没有得到广大手机制造商 和软件开发商的真正支持,想成为一个广泛的开发平台还需要假以时日。 从j 2 m e 的国内外发展情况以及和它的竞争对手的比较中,我们可以看 出,基于j 2 m e 平台的手机应用开发在最近会是一个热点,并且它的确可以 给人们的生活带来便捷。 下面介绍一下本文的主要研究工作和组织结构。 武汉n - i - 火学硕士学位论文 1 2 本文的主要研究工作和组织结构 本文以基于j 2 m e 平台的手机应用的开发为线索,进行了理论研究,实 验和项目开发。具体工作如下: 1 研究介绍了j 2 m e 平台的特点。j 2 m e 能够成为如今最流行的手机开 发平台,和它的特点有很大的关系。研究它的特点,我们可以很清楚的知道 j 2 m e 平台的优越性,同时也认识到对它的研究有很大的意义。 2 研究介绍了x m l 。特别是关于j 2 m e 和x m l 的结合部分,我们将重 点介绍。介绍这一部分为后面的移动w e b 服务打下理论基础。 3 对移动w e b 服务的设计。在这部分中,我们将介绍完整的移动w e b 服务的工作原理和开发过程。重点介绍移动w e b 服务的客户端。 本文的组织结构如下: 第一章介绍j 2 m e 的用途和基于j 2 m e 平台手机开发的国内外发展情况。 第二章研究介绍了j 2 m e 结构,功能以及j 2 m e 应用开发流程工具,最后举 例详细说明j 2 m e 应用。第三章研究介绍了x m l 。我们重点介绍了j 2 m e 如 何与x m l 结合并展示了它们合作的美好前景。第四章详细介绍了移动w e b 服务的设计。第五章给出本文的结论。 武汉理:l j 大学硕士学位论文 2 1 j a v a 平台划分 第2 章j 2 m e 概述 认识到一种结构不可能适应所有的情况,所以,s u n 公司将j a v a 划分 成3 个不同的版本,每个版本都针对当今计算机产业中的一个特定领域 3 】= j 2 e e ( j a v a “2p l a t f o r m ,e n t e r p r i s ee d i t i o n ) ,用于企业为客户,供应商和 员工的可升级的服务器解决方案。 j 2 s e ( j a v a 2p l a t f o r m ,s t a n d a r de d i t i o n ) ,用于常见的桌面计算机市场 和为低端商务应用提供解决方案。 j 2 m e o a v a “”2p l a t f o r m ,m i c r oe d i t i o n ) ,用于消费产品和嵌入式设备的 最佳解决方案。 每一个j a v a 版本都是以下技术的集合 5 5 】: 不同的j a v a 虚拟机。 不同的库和a p i 函数。 不同的配置和描述。 j 2 匝 3 a v a 2 企业版 ( j 2 e e )j a v a 2 标准版 ( j 2 s e ) 配景文件 c d cc l d c i竺! 兰皇f 图2 1j a v a 家族 图2 1 表明了j a v a 的不同版本和它们的目标市场,从左侧最高端的平台 武汉理1 :火学硕士学协论文 开始一直到右侧最低端的平台为止。j 2 e e 提供对服务器和企业级计算机的 支持rj 2 s e 提供对桌面和个人计算机的支持,j 2 m e 提供对高端和低端消费 类设备的支持。 高端消费类设备:这个类别的典型设备是电视机顶盒、可视电话、车载 娱乐导航系统等。这些设备具有处理大数量用户接1 :3 的能力,总的内存固 定地从2 m 到4 m ,高带宽的网络连接。 低端消费类设备:这个类别的典型设备是手机、智能电话、传呼机等, 这些设备有简单的用户界面、很小的内存( 一般不超过1 2 8 k ) 、低带宽和非 连续的网络连接。大多数这些设备都是靠电池供电。 这两类设备之间的界限很模糊,它们之间的界限主要是靠设备的内存容 量、网络带宽、物理屏幕尺寸来划分的。 j 2 m e 是s u n 公司于1 9 9 6 年6 月推出的、专门为资源受限的小型消费性 电子设备的应用程序开发提供的新j a v a 版本,目前已经被广泛地用于手机、 p d a 个人数字助理、汽车导航系统以及电视机顶盒等众多小型资源受限设 备中,有着非常好的发展前景。它的主要技术优势在于:有良好的跨平台能 力,实现了w r i t eo n c e ,r u na n y w h e r e ;有着与j 2 e e 后端的无缝结合能力: 保留了j a v a 语言的优良特色,如简单、安全;以及现有的j a v a 平台上广泛 的开发工具,企业、开发人员能够为j 2 m e 提供良好物质和人力支持等。 2 2j 2 m e 特点 到目前为止,手机上的应用软件开发几乎都是基于j 2 m e 平台的,这其 中一定有原因! 让我们回顾一下手机的发展历史,我们不难发现它的发展经历了三个阶 段:早期的传统手机通常只有通话和短消息功能,只能提供基本的语音服务, 这是第一阶段。到了第二阶段,手机上又增加了一些简单的附加应用,如电 话簿和电话铃声编辑等功能,使手机的功能变得比较多样化了。然后,随着 无线通信业的迅速发展,手机也发展到了第三阶段,开始有了访问i n t e m e t 武汉理一i 人学硕:l 学能论文 的功能。在过去的几年里,无线通信业呈现了爆炸式的增长。与此同时,人 们已经变得越来越依赖于i n t e m e t 网上的信息,而且希望不但能够通过他们 的计算机,而且能够通过手机来访问i n t e r n e t 网上的信息。虽然目前的无线 网络只能提供有限的数据传输率,允许用户每秒仅仅传输最多几十k 位的 数据,但是,即将来临的第三代无线网络将会提供从每秒几百k 位到几兆k 位不等的数据传输率,从而将会有足够的带宽来传输实时视频信号和高质量 的音频信号,也可以下载大量的应用和服务软件。所有的这些改变将会发生 得非常快,在未来的一到三年内,手机无论如何都会实现与i n t e r n e t 互联。 然而,随着无线i n t e m e t 新应用的出现,新的问题也随之而来。首先面 临的是开发瓶颈的问题。目前,手机类嵌入式系统普遍使用c 语言和专用 的实时操作系统,不仅开发速度慢,而且没有动态加载应用程序的能力,导 致手机上的应用程序开发很困难。方面,单纯依靠手机厂商自身的软件开 发能力难以满足市场的需求,另一方面广大的软件开发商却又无法参与进 来,开发适用于手机的应用程序,这无疑极大地制约了新应用的推广与普及。 其次,目前手机访问i n t e r n e t 只能通过w a p 方式,而且只能访问w m l 网 页,而不是主流的h t m l 网页,也不能显示复杂的图形格式,此外,w a p 采用的b r o w e r s e r v e r 方式访问i n t e m e t ,能提供的功能很有限,并且,因为 现有的w a p 解决方案不够智能化,又不能访问本地存储区,如果进行在线 交易会增加服务器负荷,饺服务器的反应速度变慢,使无线i n t e m e t 的应用 受至0 了很大限带4 。 j 2 m e 的出现则使上述问题迎刃丽解。因为j 2 m e 是基于j a v a 语言的, 所以它天生就具有以下优点【4 j : 动态内容传输。新的应用、服务和内容可以通过不同类型的网络动态下 载。 安全。类文件校验、明确定义的应用程序编程接口和安全组件确保了第 三方应用程序的行为是可靠的,不会对设备或者网络造成损害。 交叉平台的兼容性。标准化语言组件和库意味着由于支持j 2 m e 配置和 描述所带来的约束使应用和内容可以在不同设备之间灵活地传输。 武汉理丁人学硕士学仿论文 离线获取。不用激活网络连接,应用就可以被使用。这种特点降低了传 输费用,减轻了可能的网络故障带来的影响。 一种功能强大的现代面向对象的编程语言。j a v a 相对于当前用于无线软 件开发的编程语言和工具来说具有更加完善的抽象机制和更高级的程序构 造,这使得应用开发更加有效。 巨大的开发者团队。据估计,在全球有超过3 0 0 万的j a v a 软件丌发者。 j a v a 也正迅速地变为和c 语言一样在学院和大学里被用于教学的流行的编 程语言。 这些特性使第三方软件开发商可以很容易地介入应用程序的开发,并且 可以很方便地将应用程序安装到手机上,开发周期也大大缩短,而且还能支 持应用程序的动态下载和升级。j 2 m e 提供了h t t p 协议支持,使手机能以 p c 机使用的c l i e n t s e r v e r 方式直接访问i n t e r n e t 的全部信息,此外还能访问 本地存储区,提供最高效率的在线交易。j 2 m e 应用程序除了能够更好地完 善手机上己有的应用外,还进一步增加了字典、图书、游戏、定时提醒等新 的应用,并能访问电子邮件、即时消息、股票和电子地图等信息。 将j 2 m e 技术应用到手机上绝不是强制的,最重要的一点是这种应用是 通过补充现有的技术和标准循序渐进地完成的,而不是同这些现有的技术和 标准竞争。j 2 m e 并没有为无线设备定义一个新的操作系统或者一个完整的 系统软件栈,它只是定义和标准化了一种可移植的无线应用开发环境,主要 是针对第三方应用开发商,将设备软件开发向第三方开放,这个环境可以灵 活地附加到设备制造商开发的己经存在的软件和硬件之上,并且不会对已经 存在的系统软件造成影响。这才是j 2 m e 大获成功的真正原因1 2 3j 2 m e 体系结构 j 2 m e 的体系结构是基于设备的类别的。一个类别定义了一个特定种类 的设备:手机、简单寻呼机和电脑记事本都是单独的类别。 为了支持有限连接设备类别所要求的那种灵活性和可定制性,s u n 公司 武汉理j :火学硕士学位论文 将j 2 m e 体系结构设计成模块化的和可伸缩的。j 2 m e 技术在个完整的应 用程序运行时模型中定义了这种模块性和可伸缩性,在该模型中的三个软件 层都构建在设备的主机操作系统上。图2 2 显示了j 2 m e 的四层体系结构4 1 。 图2 2j 2 m e 体系结构 主机操作系统层( 王 o s to p e r a t i n gs y s t e ml a y e r ) :这一层为特定硬件设备 的操作系统层。 j a v a 虚拟机层( j a v a v i r t u a lm a c h i n el a y e r ) :这一层是j a v a 虚拟机的个 实现,它是为特定设备的主机操作系统定制的,支持一个特定的j 2 m e 配置。 配置层( c o n f i g u r a t i o nl a y e r ) :配置层定义了j a v a 虚拟机的功能和特定类 别设备上可用的j a v a 类库的最小集。从某种程度上说,一个配置定义了j a v a 平台的功能部件和库的共同性,开发者可以假设这些功能部件和库在属于某 一特定类别的所有设备上都是可用的。这一层对用户是透明的,但它对描述 的实现者非常重要。 目前可用的配置有两种,它们是连接设备配置( c d c ,c o n n e c t e dd e v i c e c o n f i g u r a t i o n ) 和有限连接设备配置( c l d c ,c o n n e c t e d l i m i t e dd e v i c e c o n f i g u r a t i o n ) 1 。 连接设备配置 武汉理工人学硕十学位论文 c d c 应用于相对内存量较大、更强处理器的移动设备。c d c 规范采用 了内存优化的虚拟机,也就是所谓的c v m ,通过它提供等同标准j v m 的特 性。按照s u n 的文档说明,c d c 针对新型p d a 、智能通讯设备和机顶盒之 类的高端设备。为了能够受到c d c 支持,移动设备必须至少具备以下条件: 用于c v m 和j a v a a p i 库的2 m b 内存;3 2 位微处理器或者控制器;可 用网络连接,最好是高带宽连接;连结有限设备配置。 c d c 的要求有利于昂贵的手机、i r 扫描仪或类似产品。c l d c 则主要 针对那些更轻便、更便宜、不能满足c d c 要求的设备。它的设备需求如下: 最低1 6 0 k b 的内存,其中1 2 8 k b 用于k v m 和运行时库;最低1 6 位 2 5 m h z 处理器;有限的用户界面功能;没有( 或者间歇的) 低带宽网络连接。 描述层( p r o f i l el a y e r ) :描述层定义了特定类别设备上可用的应用程序编 程接口的最小集。描述在一个特定的配置上实现。应用程序是针对特定的描 述编写的,因此可以移植到支持该描述的任何设备上。一个设备可以支持多 个描述。用户和应用程序开发者看到最多的就是这层。 s u n 公司推出了两种可用的j 2 m e 描述:基础描述( f o u n d a t i o np r o f i l e ) 牙 1 移动信息设备描述( m i d p , m o b i l e i n f o r m a t i o nd e v i c ep r o f i l e ) 。 基础描述主要用于c d c 配置,因而其虚拟机几乎等同于标准的虚拟机。 这意味着,使用基础描述的开发人员可以访问完整实现的j 2 s e 特性集。 m i d p 连同功能较少的c l d c 配置一道为开发移动设备应用程序提供了 j a v a 平台。m i d p 支持j 2 s e 类库的有限子集和c l d c 配置上定制的用户接 口和输入输出类。 j a v a 虚拟机层、配置层和描述层一起为j 2 m e 应用程序提供了一个标准 的运行时环境,这个环境允许新的应用程序和服务动态地被安装到各种终端 用户设备上。 在手机上,k v m ,c l d c ,m i d p 分别实现了j 2 m e 体系结构中的j a v a 虚 拟机层、配置层和描述层。下面,对k v m ,c l d c ,m i d p 做个详细介绍。 武汉理j :入学硕:学位论文 2 4k v m 1 k v m 概念 c l d c 和m i d p 都是运行在s u n 公司的k v m 上。k v m 是一个专门为 小型、资源受限设备所设计的紧凑的、便携的j a v a 虚拟机。j a v a 虚拟机是 j a v a 程序语言的核心,只要j a v a 程序在执行,j a v a 虚拟机也必定在执行。 j a v a 虚拟机是实际执行j a v a 程序的引擎,也是j a v a 语言具有这么多优良特 色的关键所在。当你执行j a v a 程序时,程序内的指令其实并不是由硬件直 接执行,而是由一个特别的软件一一读取这些指令来执行的。简单地说,j a v a 程序不是被底层的c p u 直接执行,而是被“虚拟c p u ”执行的,所谓的虚 拟c p u 其实就是计算机上执行的一个特别软件。虚拟机的优点甚多,比如 移植方便,只需要移植虚拟机和相关的支持程序库到新的硬件架构上,所有 上层的应用程序都不需要更动就完成移植了。虚拟机的另一个好处是它在计 算机软硬件间加入一层抽象分离和保护,可以防止恶作剧的程序暗中搞鬼 ( 比方说删除文件或破坏内存) 【7 】。 2 k v m 特征 k v m 设计的高级目标是生成尽可能小且完整的j a v a 虚拟机,它具有以 下特征: 小型的,虚拟机核心所占有的静态存储空间在4 0 k b - 8 0 k b 之间( 与编译 选项和目标平台有关) ;清晰的,具有良好的注释和高可移植性;模块化, 可定制;在不牺牲其它设计目标的前提下尽量完善和高速。 k v m 中的“k ”代表“千( k i l o ) ”。这样命名是因为它的内存容量是用 几十k b 来衡量的( 而桌面系统是用兆( 峋甚至是用千兆( g ) 来衡量的) 。k v m 典型地应用于数字移动电话、传呼机、p d a ,p o s 终端、家用智能电器等设 备上面。 3 k v m 实现 k v m 实现所需的最小内存空间大约是1 2 8 k b ,包括虚拟机、最小的库 武汉理一l 大学硕士学位论文 和运行j a v a 应用程序所需的堆空问。一个更加典型的实现是需要总共2 5 6 k b 内存空间,其中3 2 k 作为应用程序运行时的堆空间,6 0 8 0 k b 用于虚拟机 本身,剩余的为类库保留。 由于受到严格的内存容量限制,k v m 因此缺乏些完整j v m 所提供的 特性,这意味着,你可能要改变自己的编程风格了。使用c l d c 的开发者 在编译程序之后必须预先采用j 2 m e 开发工具包所提供的种检查工具对 他们的源代码进行预校验。 k v m 在目标设备中真正的任务会非常不同。在一些实现中,k v m 常常 是位于本地软件栈之上使设备具有在其上下载和运行动态、交互、安全的 j a v a 程序的能力,手机上的k v m 就属于这种情况。在另一些实现中,k v m 被用于底层同时也用j a v a 编程语言实现底层系统软件和设备应用。 为了满足基于k v m 的设备一般只有狭小的内存空间和有限的处理能力 的事实,k v m 是用c 语言编写( 它不是现有的v m 改进了的以后的产品) 的, 所以只要有c 语言编译器,它就可以方便地移植到各种平台上。此外,k v m 是模块化的,也就是说,它是由模块构建的,当某个模块实现了预先设定的 目标后,就可以很容易地把这一模块卸载。可选的模块包括:大的数据类型 ( 1 0 n g ,f l o a t 和d o u b l e ) 、多维数组、类文件验证等。 2 5c l d c 1 配置 j 2 m e 中,所有的应用程序都是针对特定的描述编写的,而描述是基于 或者扩展了一个特定的配置。因此,配置所有的特征都会包含到描述中并且 可以被为这个描述编写的应用程序所使用。配置定义了一个j a v a 平台,这 个平台具有相似的对于内存容量和其它硬件特征的要求。更加明确的说,配 置 “1 :指定了支持的j a v a 编程语言的特征,指定了支持的j a v a 虚拟机的特 征,指定了支持的基本j a v a 库和a p i 。 每个配置详细指定了j a v a 语言和虚拟机的特征和一套库。从而描述的实 武汉理一 大学硕:l 学位论文 现者以及使用描述的应用程序可以安全地认为当设备出厂的时候这些特征 和库都是存在的。描述的实现者必须将他们的代码限制在配置所标明的特征 和库范围内。 简单地说,配置为设备制造商和描述实现者定义了“最低公共标准,平 台或者构建块。所有具有大体相同的内存容量和处理能力的设备都要实现定 义在配置中的所有特征。描述的实现者要同意只使用配置定义的特征。因此, 可移植性通过这个配鼍就在描述和设备之间实现了。 在j 2 m e 环境中实现配置层最重要的原因,是跨大量不同j a v a 平台实现 的核心j a v a 库总是同一个j a v a 虚拟机的实现紧密地结合在一起。在配置规 范中很小的差别就需要对一个j a v a 虚拟机的内部设计进行大的改动,并且 有可能会需要附加一些物理内存,维护这样的改变是非常昂贵并且费时的。 数量很少的配置意味着很少数量的j a v a 虚拟机实现就可以满足大量的描述 和大量不同硬件设备类型的需求 i 甜。这个j 2 m e 所提供的经济上的尺度对于 在消费类和嵌入式工业中获得成功并带来效益是非常重要的。 2 c d c 和c l d c 为了避免混乱,j 2 m e 只有相当有限数量的配置。到目前为止,只有两 种标准的j 2 m e 配置可用: c l d c :这个配置致力于低端的消费类设备,c l d c 的目标设备典型的 例子包括个人的、移动的、电池供电的、互联的信息设备象手机、双向传呼 机和个人信息管理器。这个配置包括一些新的类,并非全部来自j 2 s e 的a p i , 而是特别为适应小型设备而设计的。 c d c :这个配置致力于高端的消费类产品。c d c 的目标设备典型例子 包括共享的、互联的信息设备象电视机机项盒、i n t e m e t 电视和高端的通信 设备。这个配置包含了比c l d c 更加复杂的j a v a 库和虚拟机的集合。 图2 3 表明了j 2 m e 的两种配置和j 2 s e 之间的关系。正如图中所示, c l d c 和c d c 的大部分功能派生自j 2 s e ,从j 2 s e 环境中派生的类必须完 全与j 2 s e 环境中的类相符合或者是其子集。另外,c l d c 和c d c 引入了一 些并非来自j 2 s e 的特征,这些是专门为适应小型设备而设计的。c l d c 是 武汉理:f 大学硕士学位沦文 c d c 的一个子集。 幽2 3j 2 m e 配置和j 2 s e 的关系 3 c l d c 目标 为小型的、资源受限的连接设备定义一个j a v a 平台标准。这些设备具 有以下的特点:1 6 0 k 到5 1 2 k 的总存储空间可用于j a v a 平台,1 6 位或3 2 位的处理器,低电力消耗,通常使用电池供电,连接一些网络,通常是无线 的、间断性连接以及有限的带宽。 允许向这些设备动态地传递j a v a 应用程序和内容。 使第三方应用程序开发商能够轻松地生成应用程序和内容,并配置到这 些设备上。 4 c l d c 范围 j a v a 语言和虚拟机特征,核心j a v a 类库( j a v a 1 a n g 4 ,j a v a u t i l * ) ,输a 输出,网络,安全,国际化。 c l d c 配置不包括下列领域的问题,这些特征由位于c l d c 上面的描述 实现来解决:应用程序的生存周期管理( 应用程序的安装、发布、删除) ,用 户界面,事件处理,高级应用模型( 用户和应用程序间的交互) 。 5 c l d c 特征 安全,遵守j a v a 语言规范,遵守j a v a 虚拟机规范,要求类文件验证。 6 c l d c 类库【1 1 j 2 e e 和j 2 s e 为桌面计算机和服务器的企业级应用和开发提供了非常丰 富的库函数。不幸的是这些库需要几十兆的内存来运行,因此并不适合于资 源受限的小型设备。所以c l d c 针对小型受限设备重新制定了一个类库。 武汉理工大学硕士学位论文 为了保证应用程序的兼容性和可移植性,包括进c l d c 的大多数类库都是 j 2 s e 中规定的子集,其它些是由c l d c 规定的专用于移动设备的类。包 括:从j 2 s e 中继承的类、国际化支持类、系统属性类、c l d c 专用类四个 方面。 2 6m i d p 2 6 1 描述 应用的可移植性是j a v a 在桌面计算机和企业服务器市场上最重要的优 点。同样,在消费类设备中j 2 m e 的价值所在的关键一点依然是它的可移植 性。不过,在消费类设备中对于可移植性的要求同桌面和服务器市场中的要 求完全不同。在大多数情况下,消费类设备在内存大小、网络和用户界面的 处理能力方面具有相当大的差异,使得很难用一种解决方法来支持所有的设 备1 卯。 一般来说,消费类设备市场并非是相似的,最终用户也不期望或者要求 通用的应用可移植往。相反,从消费者的角度来看,应用在相同的产品家族 中做到理想的完全可移植就行了。例如,考虑下面类型的消费类设备:移动 电话,洗衣机,带通信功能的电动玩具。可以清楚地看到上面的每一件产品 都代表了一个不同的市场类别、设备家族或者应用领域。因此,消费者将会 期望有用的应用可以在一个设备家族中移植。例如: 股票经纪人希望同样的股票交易程序能工作在不同的手机上,即使手机 是由不同的制造商生产的。 在互联网上发现一个很有用的去油渍的洗衣程序,但如果它只能够用于 较老型号的洗衣机上而不能用于新型的洗衣机上的话,消费者会对此感到失 望。 消费者的电动玩具和另一个不同品牌的电动玩具不能够相互“交流”, 这也是很让人沮丧的事。 武汉理 :大学硕士学位论文 另一方面,消费者并不希望股票交易程序能正常运行在沈衣机上或者电 动玩具上,也就是说,跨不同设备家族的应用程序的可移植性并不是很重要。 此外,这种设备家族的分割还有一个很重要的经济原因:消费类设备在 成本和方便实用性方面的竞争非常激烈,这些因索会直接影响到消费类设备 的物理尺寸、重量、处理器性能、存储器容量和电能消耗( 使用电池供电的 设备) 。消费者总喜欢选择那些恰恰能满足他们需求的产品,对那些包括许 多不需要的功能的多功能但价格昂贵的设备并不感兴趣。因此,j 2 m e 提供 了描述的概念,使得可以为特定的设备家族定义相同的j a v a 平台。描述可 以满足两种明显不同的可移植性需求: 描述为在一个特定的设备家族实现应用提供了完整的工具,比如传呼 机、机顶盒、移动电话、洗衣机或智能玩具。 可以创建一种描述来支持重要的、一致的一组应用,这些应用可能会在 几利,不同的设备上运行。例如,尽管机顶盒、传呼机、移动电话、洗衣机 之间的区别很大,完全有理由为每一类设备定义一个单独的描述,但是在这 些设备之间实现可移植性对于一些很有用的应用如个人信息管理、家庭银行 等应用来说是非常有利的。这可以通过为这些类型的应用创建单独的描述来 实现,只要确保每个目标设备的针对特定设备的描述也可以对这个新的描述 提供很好的支持就行了。 一个单一的设备可以支持几个描述。这些描述中的一些可能是面向设备 的,而另一些可能是面向应用的。一个为特定的描述编写的应用程序只能使 用该描述所定义的特征。虽然制造商可以选择他们的产品将支持哪个或哪些 描述,但是一旦作出了选择,他们的产品也必须实现所选择的描述的所有特 征。对消费者来说这种观点的价值在于为一种特定的描述写的应用可以在任 何支持这种描述的设备上运行。 简单地说,描述就是应用和市场的设备家族之问的协议。处于同一个设 备家族中的所有设备都必须实现其描述所定义的特征,并且要求应用只使用 这个特定描述所提供的功能。因此,通过这个描述就可以在应用和设备之间 实现可移植性。新的设备就可以直接使用大量的、常见的基础应用。最重要 武汉理 :大学硕士学位论文 的一点是新的、更吸引人的应用( 也许根本没有被设备制造商和描述定义者 所预见) 可以动态地下载到已经存在的设备上使用。 在实现层次上,描述被简单地定义为应用在特定配置上的j a v aa p i 和 类库的集合,同时为市场中特定的设备家族提供了附加的面向特定领域的功 能。 在上面的例子中,三个设备家族中的每一种设备( 移动电话、洗衣机和 智能玩具) 都可以通过一个不同的j 2 m e 描述来定义。 现在,已经有了五个规范化了的描述【1 5 】,如表2 1 所示: 表2 1 五种规范化的描述 描述名称 下层配置 m o b i l ei n f o r m a t i o nd e v i c e sp r o f i l e ( m i d p ) c l d c p e r s o n a ld i g i t a la s s i s t a n tp r o f i l e c l d c f o u n d a t i o np r o f i t e c d c p e r s o n a lp r o f i l e c d c r m i p r o f i l e c d c 本文重点讨论针对移动电话和相关设备定义的描述,即移动信息设备描 述( m i d p ) 。 2 6 2m i d p 设备的需求 这里所列的需求都是处于c l d c 之上的附加需求,在高层次上m i d p 规 范假定移动信息设备在它的处理能力、存储、连接特性和显示屏大小上受到 限制【4 1 l 。 ( 1 ) 硬件需求 m i d p 目标设备的硬件要求如下: 内存:1 2 8 k 非易失性存储器用于m i d p 组件,8 k 易失性存储器用于应 用程序创建的固定数据,3 2 k 易失性存储器用于j a v a 运行时。 非易失性( n o n v o l a t i l e ) 存储器是指当用户在关闭设备和打开设备期间, 武汉理j :人学硕士学位论文 仍能保持其内容不丢失。这里通常认为对非易失性存储器的操作是都只读模 式的,进行写操作需要特殊步骤。非易失性存储器的例子包括只读存储器 ( r o m ) 、闪存( f l a s h ) 和有后备电池的s d r a m 。 易失陛( v o l a t i l e ) 存储器是指在用户关闭设备后不保存它的内容,通常认 为对它的操作包括读模式和写模式,对它的访问不需要特殊步骤。易失性存 储器最常见的类型是d r a m 。 这里谈到的存储需求只用于m i d p 。c l d c 和其他系统软件对内存的需 求超出了这个规范的范围,因此不包括在内。 显示屏:屏幕尺寸,显示深度,像素形状。 输入:单手键盘,双手键盘,触摸屏。 网络:双向,无线,间断性,有限带宽。 移动信息设备的典型例子包括移动电话、双向寻呼机、具备无线功能的 p d a 等。 ( 2 ) 软件需求 对于具有前面所提硬件特征的设备,它们的软件能力也有很大的范围。 和消费者的桌面计算机模型不同,后者具有大型的、垄断性的系统软件体系 结构,而m i d 范围内有众多的系统软件,例如一些m i d 有功能完全的操作 系统,支持多进程和层级文件系统;而另一些可能只有很小的、基于线程的 操作系统,没有文件系统的概念。面对这种多样性,m i d p 对移动信息设备 的系统软件需求做了最小假设,规定如下: 管理底层硬件的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学生村官年度思想工作内容总结
- 大学生寒假社会实践调研报告
- 高竞争力面试题及答案精 编行业指导参考
- 在开学典礼暨教师节教师发言稿
- 小儿美克尔憩室超声课件
- 难点详解沪科版9年级下册期末测试卷含完整答案详解【必刷】
- 乡村住房转让协议书范本
- 抖店合作经营协议合同范本
- 营地驱蚊产品采购合同范本
- 兼职外教聘请协议书范本
- 2025年湖北省中考英语试题(附答案)
- udi追溯管理制度
- 三一研发项目管理制度
- 轮胎公司中长期发展战略规划纲要(2025-2030年)
- 浙江省衢州市2023-2024学年高二下学期6月教学质量检测数学试题(含答案)
- 化妆品外包生产管理制度
- 颅内静脉窦血栓护理查房
- 成人重症患者颅内压增高防控护理专家共识
- 【聊城】2025年山东聊城科技职业学院(筹)公开招聘工作人员60人笔试历年典型考题及考点剖析附带答案详解
- 2024年国家中医药管理局直属事业单位招聘真题
- 读书分享《教师的语言力》
评论
0/150
提交评论