已阅读5页,还剩49页未读, 继续免费阅读
(计算机应用技术专业论文)基于移动平台动画编辑器的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学硕士学位论文 摘要 在信息社会里,手机已成为人们日常生产生活中必不可少的通讯工具。随着技术的 发展,手机的性能比过去有了巨大的提高,几乎可以与九十年代中期的p c 机相媲美。 可以说当今的手机已经成为一个能够随身携带的小电脑,让我们可以随时随地的进行工 作,学习和娱乐。 软硬件性能的提高也带动了手机内容的繁荣发展,各种新型的移动增值业务层出不 穷,丰富了人们的生活。其中手机游戏因方便携带、不受时间、地域的限制,受到众多 玩家的青睐,成为p c 视频游戏之后一个重要的业务增长点。广阔的市场促进了手机游 戏的快速发展,游戏种类日益增多,如今除了传统的休闲游戏和单人游戏外,像网络游 戏等原来只在p c 等大型平台上才有的游戏类型现在在手机上都能见到其身影,并且画 面表现力和性能上也不输于其他传统游戏平台。作者正是在此基础之上结合了实际的开 发经验,合理运用了些新技术实现了一套手机平台的动画编辑器,本文的主要工作集 中在: 首先,研究并论述了j 2 m e 平台的特性、体系结构和移动平台动画文件的存储结构, 针对动画图片中相邻两帧图像重复度较大的存储特点提出将动画图片资源分割再重组, 并结合相应图片数据和动画数据的动画文件存储结构。 其次,研究并介绍了遗传算法。利用遗传算法实现了动画图片资源文件在重组过程 中的自动优化布局。 然后,研究并探讨了移动开发的技术要点,包括移动平台开发中盼性能优化。针对 移动开发平台的特点,设计了动画的层次数据结构,实现了j 2 m e 平台动画应用接口。 最后,设计并实现了一套移动平台的动画编辑软件,较大的提高了移动平台动画的 开发效率。通过研究分析移动平台动画开发的技术原理,实现了移动平台动画的可视化 编辑和动画预览。采用动画图片文件和动画数据文件相结合的动画文件存储技术,使动 画文件的存储效率有了较大的提高,特别是在动画图片资源图像重复度较高时,效果尤 其明显。 关键词:移动平台;动画编辑器;遗传算法;j 2 1 e 大连理工大学硕士学位论文 d e s i g na n di m p l e m e n t a t i o no fc a r t o o ne d i t o rb a s e do nm o b i l e p l a t f o r m a b s t r a c t i nt o d a y si n f o r m a t i o ns o c i e t y ,c e l lp h o n eh a sb e e nt h e i n d i s p e n s a b l em e a n so f c o m m u n i c a t i o ni np e o p l e sd a y - t o - d a yp r o d u c t i o na c t i v i t i e sa n dl i f e a st e c h n o l o g y p r o g r e s s e s ,t h ep e r f o r m a n c eo fc e l lp h o n eh a sb e e ni m p r o v e d1 a r g e l ya n di sc o m p a r a b l et o t h a to f p ci nt h es e c o n dh a l f o f t h e1 9 9 0 s s oi ns o m ew a y , w e 啪r e g a r dm o b i l ep h o n ea sa l i t t l ep cw h i c hc a nb ec a r r i e d 喇t ht oe n a b l ep e o p l ew o r k , s t u d ya n de n t e n a i m n e n t 砒a n y p l a c ea n d a n y t i m e t h ed e v e l o p m e n to fh a r d w a r ea n ds o l , r a r eo fc e l lp h o n ea l s ob r i n gs e r v i c ec o n t e n t s p r o s p e r i t y a l lk i n d so fv a l u e a d d e d5 廿 v i c ee m e r g ei ne n d l e s ss t r e a m s ,a n di ti m p r o v e d p e o p l e sl i f el a r g e l y o n eo f t h em o s tp o p u l a rs e r v i c ei sm o b i l eg a m e s i n c ei t se a s yt oc a l t y w i t h , n ol i m i t e dt om a n yk i n d so fm o b i l eg a m e s ,e v e nl i k eo n l i n ew h i c ho n l yc a nb es e e ni n l a r g eg a n l ep l a t f o r mn o wa l s oh a v em o b i l ev e r s i o n i t sr a t i o n a lt 0b e l i e v et h a tm o b i l eg a m e w i l lb et h em o s ti m p o r t a n tv a l u e - a d d e ds c t v i c ei nt h ec o m i n gy e a r s a c c o r d i n gt 0t h ea n a l y s i s o ft h ec u r r e n tc e l lp h o n ee n t e r t a i n m e n tm a r k 豇a n di t s d e v e l o p m e n tt r e n d , t h ea u t h o r i r n p l e m e n t e aa nc a r t o o ne d i t o rb a s e do nm o b i l ep l a t f o r m t h ew o r kf o c u so n : f i r s t l y , r e s e a r c ha n dd i s c u s st h es p e c i a l i t ya n da r c h i t e c t u r eo f t h ej 2 m ep l a t f o r ma n dt h e a r c h i t e c a t r eo ft h ec a r t o o nf i l eo nt h em o b i l ep l a f f o r m i no r d e rt or e d u c er e p e t i t i o no ft h e a d j a e 跚tf l - f l n l e s ,c o n s i d e r i n gt h es p l i t e d - r e f o r ms t o r a g ec h a r a c t e r i s t i co nm o b i l ep l a t f o r m , a m e t h o dt os o l v et h ep r o b l e mi sp r e s e n t e x l s e c o n d l y ,r e s e a r c ha n di n t r o d u c et h eg e n e t i ca 1 9 6 r i t h m u s i n gt h eg e n e t i ca l g o r i t h m , t h i s p a p e rs o l v e dt h el a y o u to f t h er l i n l a t i o ns p l i ti m a g eo nm o b i l ep l a t f o r m t h e nr e s e a r c ha n dd i s c u s st h ek e yt e c h n i q u eo f t h em o b i l eg a m ed e v e l o p m e n t ,i n c l u d i n g p e r f o r m a n c eo p t i m i z a t i o n p r e s e n tt h ed a t aa r c h i t e c t u r eo nt h em o b i l ep l a t f o r ma n dp r o v i d e t h ea p p l i c a t i o ni n t e r f a c eo f t h ec a r t o o nd a t ao nt h ej 2 m ep l a t f o r m l a s tp r e s e n tac a l t o o ne d i t o rf o rm o b i l ep l a t f o r m , w h i c hg r e a t l yi m p r o v e st h ee a r t o o 1 1 d e v e l o p m e n te f f i c i e n t l y b yr e s e a r c ho ft h ec a r t o o nd e v e l o p m e n tp r i n c i p l e , w ec a r r yo u tt h e f u n c t i o no fp r e v i e wa n de d i t i n ge a s i l y s t o r a g eo fb o t hp i c t u r ef i l e sa n dd a t af i l e sm a k et h e m e m o r ys u i n ge f f i c i e n t l y , e s p e c i a l l yw h e nt h ep i c t u r eo f t h eo a r t o o nh a v em u c hs a m ep a r t s k e yw o r d s :m o b i l ep l a t f o r m ;c a r t o o ne d i t o r ;g e n e t i ca l g o r i t h m ;j 2 m e - i i i - 独创性说明 作者郑重声明:本硕士学位论文是我个人在导师指导下进行的研究工 作及取得研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理 工大学或者其他单位的学位或证书所使用过的材料。与我一同工作的同志 对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意 作者签名: 堕幺蝗日期:趁1 2 。丝:7 大连理工大学专业学位硕士学位论文 大连理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位 论文版权使用规定”,同意大连理工大学保留并向国家有关部门或机构送 交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连理 工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也 可采用影印、缩印或扫描等复制手段保存和汇编学位论文。 作者签名 导师签名 堕场翅 ,l 大连理工大学硕士学位论文 1绪论 1 1 研究背景及意义 1 1 1 研究背景 大家己经感觉到,我们身边的大部分人都拥有了自己的手机,利用手机和别人沟通 已经成为我们生活的一部分。在欧美,人们开始利用手机购买商品或是进行商务活动; 在日本,手机的许多附加功能更是年轻人文化的一部分。而即将来l 临的第三代无线网络 和宽频技术,更带给了我们对无线通讯未来的美好期望。手机作为一种随身携带的通讯 工具,人们不但希望它有强大的通讯功能,也希望它还能提供丰富动画表现力。尤其是 在手机游戏中,丰富的动画表现力更是尤为重要。 现今,全球的手机游戏市场规模已经相当庞大,市场前景也十分乐观。国内手机游 戏行业从2 0 0 3 年9 月中国移动百宝箱收费项且正式启动后,用户里爆炸式增长,2 0 0 5 年国内手机游戏的供应商和生产商一共只有4 0 家,而在手机用户只有3 5 0 0 万的韩国i l 】, 却聚集了2 5 0 家手机游戏的运营商和开发商。因此在中国,这绝对是一个高利润高回报 的产业。中国手机游戏市场趋势预测2 0 0 6 2 0 1 0 ) 研究表明,2 0 1 0 年中国手机游戏市 场总规模将达到9 5 2 7 亿元,从2 0 0 3 年到2 0 1 0 年的市场规模年均复合增长率为6 2 4 。 从全球来看,手机娱乐服务被公认为是带动移动数据业务快速发展的重要力量。作为手 机娱乐服务的重要内容之,几年来,伴随着移动网络和移动终端性能的不断提高与完 善,手机游戏业务呈现快速增长的势头,成为一座名副其实的“金矿”。但是,手机游 戏文件的尺寸一直受到手机自身的硬件存储环境限制。手机有限的内存容量已成为制约 手机游戏发展的主要瓶颈,使用传统的动画存储格式很难得到满意的解答。 根据上述的介绍可知,开发一款高质量的手机游戏不但要保障游戏的开发效率还要 在有限的存储环境中存储更加丰富的动画文件。目前大多数手机游戏采用的传统的动画 存储方式不但耗费了大量的存储空间,而且在耗费了存储空间的同时,相应的也大大降 低了游戏中动画的表现力,从而降低了手机游戏的质量。由于动画图片通常占手机游戏 文件较大的存储空间,因此如何在不牺牲图片质量的前提下,最大限度地降低游戏中动 画图片的存储空间,是目前手机游戏开发急待解决的问题。 根据对手机游戏平台的分析和认识,本文的主要工作是:提出一种新的手机游戏动 画存储格式,以此尽量缓解手机有限的存储空间对动画存储空间的限制,在此基础之上 设计一套基于移动平台的动画编辑软件,并为游戏编程提供简便的数据操作接口,进一 步提高了手机游戏的开发效率和存储空间的利用率。 基于移动平台动画编辑器的设计与实现 1 1 2 研究意义 在手机游戏的开发过程中,游戏的开发效率、游戏中动画的表现力以及游戏文件占 用的存储空间都是衡量一款手机游戏的重要因素。以在j 2 m e 平台上开发手机游戏为例, 目前的手机能支持的i a r 文件( 即游戏的安装文件) 一般在2 0 0 k 左右,最小仅5 9 k 。为了 能使游戏在尽可能多的手机终端上运行,编程人员必须竭尽全力降低j a l 文件大小。游 戏中动画资源所需要的图片资源在很大程度上提升了j a r 文件的大小,因此如何增加动 画表现力的同时有效的降低动画在游戏中的存储空间成为目前亟待解决的矛盾。 目前在手机游戏动画的开发过程中,仍然采用传统的动画存储方式,需要存储动画 中每一帧的图片,因为动画图片相邻的两帧或相关的两帧图片之问有着很大程度的相同 或相似的部分,所以传统的动画的存储方式存储了很多不必要的相同的部分图片。针对 上述情倪,为了减少手机中动画传统存储方式中不必要的存储空间的占用,本文采用将 动画图片分割再重组的方式存储动画图片,有效的降低了原动画图片中重复的部分图片 对空间的占用,并在此基础上开发出一套移动平台的动画编辑软件,不但提高了手机动 画的开发效率,而且大大提高了手机动画的存储空间的利用率,即在相同的空间占用上 丰富了动画的表现力,提高了手机游戏中动画的质量,使商家赢利更多,因而具有更广 阔的市场前景。 1 2 手机游戏产业发展现状 1 2 1 国际手机游戏产业发展现状, 全球手机游戏业务发展可分为两个阶段,以2 0 0 2 年为分界,之前移动游戏处于起 步阶段,之后步入了大发展阶段。其实手机游戏业务最早发源于欧洲,但是欧洲运营商 对手机游戏市场的重视不足,没有把握好手机游戏市场发展的大好时机。而日韩运营商 较早认识到了手机游戏的价值,并借助国内信息产业飞速发展的机会,铺设了高速的移 动数据传输网络并开始提供高性能的手机终端,并创造了运营商与游戏提供商之间良好 的合作模式,日韩的手机游戏市场因此迅速发展起来。日韩还涌现了众多实力强劲的手 机游戏内容提供商闭,如日木c y b i r d 和韩国c o m 2 u s ,而传统的游戏厂商如世嘉和索 尼在一开始就加入了手机游戏内容提供商的行列。2 0 0 2 年以后,欧洲的运营商意识到了 手机游戏市场的广阔前景及其自身与日韩运营商之间的差距,开始急起直追,手机游戏 市场日渐活跃。 大连理工大学硕士学位论文 1 2 2 国内手机游戏产业发展现状 相比日、韩等国,中国的手机游戏市场起步比较晚,但发展势头却十分强劲,中国 有一个巨大的手机用户群,手机游戏拥有广阔的市场前景。自从2 0 0 3 年中国移动专门 推出具有游戏服务功能的“百宝箱”业务以来,国内手机游戏用户数量增长迅速,至2 0 0 6 年,在线注册用户已经超过了3 0 0 0 万人。中国联通也推出了基于j a v a 和b r e w 平台的 手机游戏业务,手机游戏业务发展步伐不断加快。虽然目前手机游戏用户数占移动用户 的比例还不是很大,但随着手机游戏产业发展环境的日益成熟,其发展速度将一日千里。 手机游戏类型也从早期的嵌入式游戏、短信游戏、w a p 游戏、单机, l a v a 游戏再到网络 j a v a 游戏,手机游戏产业在内容的不断丰富中初显雏形。“它已经成为继短信之后,无 线增值服务的又一座“金矿”。 截止目前,我国手机的使用量己突破4 5 亿【3 】。这一数字小仅让中国成为世界上最 大的手机消费国,更为重要的是,它也为手机游戏产业的发展带来了广阔的受众基础。 以此推算,手机游戏产业的爆发力可谓巨大;随着人们对手机游戏的认可和相关服务水 平的不断提高,用户的消费动机也逐渐由被动走向主动,极大地促进了该产业的发展。 来自艾瑞市场咨询的调查资料表明,2 0 0 5 年中国手机游戏的付费用户数为1 3 9 1 万,而 2 0 0 6 年这一数字已达到1 7 5 1 万,增长2 5 9 0 6 。与此对应的是,2 0 0 6 年国内手机游戏市 场的规模已由2 0 0 5 年的9 5 亿元速增到1 4 1 亿元。 随着3 g 时代的到来,中国手机游戏市场正深深地吸引着各跨国企业的目光。不少 欧美、韩国和日本的著名手机游戏企业纷纷在中国设立了分公司,或是以提供游戏内容 的方式,曲线抢滩国内市场。2 0 0 7 年1 月1 6 日,从成都举办的“第三届中国游戏产业 年会”传出消息:随着我国手机用户持续增加,手机游戏已经成为移动运营商的重点增 值业务之一。并在可预见的2 0 0 7 年我国电信行业对外全而开放的大背景下,它将呈现 出“井喷”式的发展态势。 1 3 本文的主要研究工作 本论文的主要目标是实现一套移动平台的动画编辑器,降低动画资源的内存占用的 同时,缩短移动平台动画的开发效率。 针对移动开发平台的特性,本文的主要研究工作集中在以下几个方面: ( 1 ) 介绍了移动平台中传统动画的开发过程,研究了动画相邻帧之间的固有特性, 分析了其优点和缺点。根据其优缺点提出了基于分割再重组的动画存储设计方 案。 基于移动平台动画编辑器的设计与实现 ( 2 ) 分析动画分割图像块的重组过程,研究了遗传算法解决自动优化布局的算法, 并将其应用到动画图像块的优化布局过程中,实现了分割图像块的自动优化布 局。 ( 3 ) 分析重组后的动画图片资源,提取图片基本图像块元素的坐标数据。 ( 4 ) 根据面向对象的设计方法,研究了动画数据的存储结构,并将其应用到动画编 辑器的实现中。 ( 5 ) 分析移动开发平台的多样性,提出了动画资源、数据和动画在应用平台的实现 接口相分离的设计方案。 1 4 本文的组织结构 本文的后续章节将这样安排: 第二章阐述了移动开发平台j 2 m e 的体系结构,并对其他的移动开发平台做了简 单的介绍。 第三章介绍了移动平台动画编辑器的总体框架的设计。 第四章针对传统移动平台动画制作过程的弊端,详细阐述了本文在设计动画编辑 器中的一些关键性技术。 第五章介绍了移动平台动画编辑器的实现方案。 第六章总结与展望。 一4 一 大连理工大学硕士学位论文 2 手机游戏及软件开发平台j 2 m e 的介绍 目前国际大公司如n o h a 、m o t o r a l a 及s o n y e r i c s s o n 等所设计的手机内都加入j a v a 程序的支持,而中国移动也提供基于j a v a 的百宝箱业务,应用产品遍及商务应用、信息 获取、英汉互译、游戏娱乐等多媒体领域。因此有理由相信j a v a 将会成为移动设备上最 热门的语言。 2 1j 2 m e 概述 2 1 1j a v a2 平台划分 按照s 皿的最初的构想,j a v a 的最大目标和特点,就是“一次编写,到处运行”的 平台无关性。但是随着技术的发展,j a v a 应用程序种类的增长,s 衄认识到的用一套标 准已经无法适应所有不同的需求。因此,j a v a 技术目前共有三种版本,分别针对不同的 平台和应用: ( 1 ) j 2 e e f f a v a2p l a t f o r m ,e n t e r p r i s ee d i t i o n ) ,主要用于企业服务于其客户、供应 商和员工的可升级的服务器解决方案。该版本在标准版的基础之上增加了对 s e w l e t s ,j s p 和x m l 等技术的支持。 ( 2 ) 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 a v a 标准规范之中所定义的核心类库,也支持所有的j a v a 基本类型。 ( 3 ) j 2 m e o a v a 2 p l a t f o r m ,m i c r o e d i t i o n ) ,j 2 m e 重要被使用在各种各样的消费电 子产品上,例如智能卡、手机、p d a 、电视机顶盒等方面,实际上,j a v a 最初 发明的目的就在这里,其“一次编写,到处运行”的目标也是面对该领域众多 不同的设备提出来的。 每个j a v a 版本都有自己的虚拟机,使其实现j a v a 程序边解释边运行,所有的j a v a 程序都编译成二迸制代码并运行在j a v a 虚拟机上( j 2 s e ,j 2 e e 中的j a v a 虚拟杌简称为 j v m ) 。而j 2 m e 主要针对嵌入式和消费类的设备,由于这些设备内存和处理器的限制, 所包含的类别函数库也较小,因而虚拟机的功能也就相对简单,在j 2 m e 中有两类虚拟 机c v m 与k v m ,都可以看作是j v m 的子集,在j 2 m 巳上运行的程序大致可以分为两 种:j 2 m ea p p f i c a f i o n 运行在c v m 上;m i d i e t 运行在k v m 上。 三种平台之间的关系如图2 1 所示。 基于移动平台动画编辑器的设计与实现 服务器和企业计算机i i l桌面和个人计算机i 可选包 厂 、l_ ,女 r 、i 高端消费类设备 l j a v a 2 企业版 i 口j 越巴 j ,l低端消费类设备l ij ( j 2 e e ) 区叵 j a v a 2 标准 版 ( j 2 s e ) 叵回 三五巫互口 二函互口 图2 1j a v a 平台关系图 f i g 2 1 1 a v ap l a t f o r m 2 1 2j 2 u e 概念 下面讲一下j 2 1 v i e 的基本概念。j 2 m e 是s u n 公司于1 9 9 6 年6 月推出的、专门为资 源受限的小型消费性电子设备的应用程序开发提供的新j a v a 版本,目前已经被广泛地用 于手机、p d a 个人数字助理、汽车导航系统以及电视机顶盒等众多小型资源受限设备中, 有着非常好的发展前景。它的主要技术优势在于:有良好的跨平台能力,实现了“w r i t e o 躲,r u na n y w h e r e ”【4 】,有着与j 2 e e 后端的无缝结合能力;保留了j a v a 语言的优良特 色,如简单、安全【5 】;以及现有的j a v a 平台上广泛的开发工具,企业、开发人员能够为 j 2 m e 提供良好物质和人力支持等。 2 2j 2 m e 的体系结构 j 2 m e 从问世开始就专门为内存容量小和处理能力较低的移动设备作为j a v a 开发平 台而设计的。从表面上看,这样傲对那些希望提升应用程序的移植性的开发者来说是一 大连理工大学硕士学位论文 件好事,然而,“移动设备”这个术语却涵盖了相当广泛的领域,包括传统的个人数字 助理( p d a ) 、智能电话、传呼机甚至g p s 单元等,它们都具有各不相同的硬件配置。 同样的,这类设备的市场也支离破碎,同一供应商的两种设备之间都存在兼容性问题, 更别说不同设备供应商的产品了。 给这些五花a f - j 的移动设备提供一种普遍适用的开发平台几乎是不可能的。所以 j 2 m e 定义了两种类型的规范,它们携手提供一种移动j a v a 平台,这两种规范就是配置 ( c o n f i g u r a t i o n ) 和描述( p r o f i l e ) 。 2 2 1 配置( c o n f i g u r a t i o n ) 支持j 2 m e 的硬件是多种多样的,因此为了满足不同硬件的开发要求,j 2 m e 规定 了c o n f i g u r a t i o n 的概念。c o n f i g u r a t i o n 就是支持一组通用设备的最小j a v a 平台,同一个 c o n f i g u r a t i o n 里的硬件,其数据处理能力、存储容量、网络连接能力等这些最基础的特 性是相同的,由此来保证不同设备间的平台相容性。 虽然支持j 2 m e 的硬件平台之间存在着很大差异,但大体可以分为两大类,一类是 相对比较高端的设备,例如:电视机项盒、网络电视等,其运算能力相对较佳、并且具 有独立电源,在电力供应上相对比较充足,另一类是相对比较低端的设备,例如:移动 电话、寻呼机、p d a 等,其运算功能有限、由于是用电池做电源,电力供应也有限。相 应的,s u n 把c o n 丘g u r a t i o n 分为c l d c ( c o m e a e dl i m i t e dd c v i e , ? ec o n f i g a r a 士i o n ) 和 c d c ( c o n n e c t e ad e v i c ec o n f i g u r a t i o n )大类 6 】,这两个c o n f i g u r a t i o n 是针对设备软硬件 环境严格定义的,比如c l d c l 0 定义了内存大小为6 4 5 1 2 k ,任何设备如果支持 c l d c l 0 ,就必须严格满足定义,不能有可选的或者含糊的功能。 ( 1 ) c l d c ( c o n n e c t e al i m i t e dd e v i c ec o n f i g u r a t i o n ) c l d c 提供一个适合于小型的、资源受限的、连接的设备上使用的标准j a v a 平台1 7 】。 其设计目标是定义一个标准的,占用内存极少的平台来满足资源很少的那些设备的要 求。它可以确保动态,安全地将交互式j a v a 应用部署到一些小的设备上去。确保第三方 的应用开发人员可以为别的设备发应用程序。 可以使用c l d c 进行开发的目标设备具备以下几个特征: 1 6 0 k b ( 1 1 ) 内存用于运行虚拟机和基本类库。 3 2k b 内存用于运行时内存分配。 1 6 位或者3 2 位处理器。 有限的用户界面。 使用电池供电。 基于移动平台动画编辑器的设计与实现 无线网络连接,低带宽。 c l d c 类包含了一套标准的函数集合,但是正如上面所显示的,c l d c 工作的设备 性能受到很大的限制,因此相比j 2 s e ,c l d c 舍弃了许多重要的类和特征,只保留了最 核心的类,主要由三个包组成: j a v m l a n g ( j a v a 编程语言的基本类) 。 j a v a u f i l ( 集合、日期和时间支持、各式实用工具类) 。 j a v m i o ( 基本输入输出) 。 即使这些从j 2 s e 继承的的类,也大大缩了水。例如j a v m m i l 的类与接口由j 2 s e 的 4 7 个缩减到1 0 个。另外两个也有相应缩减。 除了上面的三个包外,c l d c 增添了一个新的包j a v a x n l i c d 0 e d m o n ,该包包含了一 些管理m i d l e t 程序生命周期的类,并且定义了一个通用连接框架( g e n e t i cc o n n e c t i o n f r a m e w o r k ,g - c f ) 。通用连接框架把j 2 s e 中的文件,s o c k e m ,h t t p 请求和其他输入输 出机制的概念抽象为更简单的一套类。可以说,它提供了j a v a i o 和j a v a n c t 的同样功能, 却不需要设备的特殊能力。 总的说来,c l d c 在内存严格限制的条件下实现了与j a v a 虚拟机相当的兼容性, 其不同点主要有下: 不支持浮点数据类型( 在最新的c l d c l 1 版本中已经可以支持浮点数据类型) 。 不支持j n i 。 没有反射( r e f l e a i o n ) 特性。 不支持线程组( t h r e a d 掣o u p s ) 或守护线程( d a e m o nt h r e a d s ) 。 没有弱参考( w e a kr e 6 玳n c 韶) 。 有限的错误处理( e r r o rh a n d i m g ) 。 ( 2 ) c d c ( c o n n e c t e dd e 、,i c ec o n f i g u r a t i o n ) c d c 则是针对内存量相对较大、处理器相对比较强的移动设备设计的,主要包括 机顶盒、数字电视、车载计算设备、网络电话等,其特点是有线连接、电源稳定、设备 资源比较受限。支持c d c 的设备平台在硬件要求上需要最少2 5 6 k 的运行时动态内存以 及5 1 2 k 的内寸来运行,另外连接的网络具有连接性、持久性和一定的带宽隅l 。 c d c 基于c l d c 基础上,包含了c l d c 所有的类和接口,c l d c 平台上的软件都 可以直接在c d c 上运行。不过虽然c d c 功能上要比c l d c 强大许多,但是其可以使用 的p a c k a g e 仍然大大少于j 2 s e 的包。j 2 s e ,c l d c ,c d c 三者之间的关系如图2 2 所 示。 一8 一 大连理工大学硕士学位论文 图2 2j 2 s e ,c l d c ,c d c 关系图 f i g 2 2 t h er e l a t i o no f j 2 s e , c l d c ,c d c 2 2 2 描述( p r o f i e ) c d c 和c l d c 仅仅是对各类设备中最具共性的配置提供了基本的功能集合,但是 并没有提供给开发者与用户存储设备、网络等应用工具,同时在实际应用中,不同的设 备之前存在着很大的差异。因此,在c o n f i g u r a t i o n 的基础上,又提出了p r o f i l e ( 简表) 的概念。 p r o f i l e 在本质上是应用程序和各种设备之间的协议。同一类设备中的的所有设备都 必须实现p r o f i l e 所定义的特征,并且设备上的程序只使用这个特定p r o f i l e 所提供的功 能。这样通过这个p r o f i l e 就可以方便的在同一类设备之间进行移植。新的设备只要支持 这个p r o f i l e 就可以直接使用基于这个p r o f i l e 之上的所有应用。 p r o f i l e 虽然定义了j a v aa p i 接口,但是底层如何实现是由各厂商自己决定的,如 m 3 g 定义了3 d 接口,但是底层实现既可以使用硬件加速,也可以由c 程序模拟,或者 部分由硬件实现,部分由软件实现。 目前使用最广泛的p r o f i l e 是m i d p ( m i c r oi n f o r m a t i o nd e v i c ep r o f i l e ) ,m i d p 定义 了能在j a v a 手机上运行的j a v a 程序的规范,包括应用程序生命周期,各种u i 界面组件, 支持r e c o r d 存储和h t t p 连接等等,符合m i d p 规范的j a v a 程序被称为m i d i e t ,可以直 接通过无线网络下载到手机并运行。 ( 1 ) 硬件需求 m i d p 对硬件的要求很简单: 在内存上,要求移动设备具有1 2 8 k b 非易失存储器( 当用户在关闭设备和打开设 备期间,仍能保持其内容不丢失。通常认为对非易失性存储器的操作是都只读 模式的,进行写操作需要特殊步骤) 用于用装载m i d p 的组件,8 k b 易失存储器 一9 一 基于移动平台动画编辑器的设计与实现 ( 在用户关闭设备后不保存它的内容,通常认为对它的操作包括读模式和写模 式,对它的访问不需要特殊步骤) 用于装载应用程序产生的固定数据以及3 2 k b 易失存储器用于在j a v a 程序运行时使用。 对屏幕的要求是大小至少为9 6 5 4 ,l 位的显示深度以及1 :1 的纵横比。 输入方式可以是单手键盘,双手键盘,触摸屏中的一种或几种。 设备要能够进行双向、无线、可间断、带宽有限的网络连接。 ( 2 ) 软件需求 因为能够支持上面所要求的硬件设备其软件能力是不同的,有的具有功能完善的操 作系统,有的甚至连文件系统都没有,所以m i d p 对设备的软件功能只能做最少的要求: 用于控制底层硬件的最小内核( 例如中断,异常,最小时序的处理) 。这个内核 必须提供至少一个可运行的实体去运行j a v a 虚拟机( j 。此内核不需支持独 立的地址空间( 或进程) ,也不需要保证任何实时功能。 对非易失存储器进行读和写的机制,以支持“永久存储”的a p i 。对无线网络 的读写访问,以支持连网操作。 定时机制,即用来提供永久保存记录时的时间戳,以支持定时器操作。 最基本的显示位图能力。 提供从三个输入机制中捕获一个( 或几个) 用户输入的机制。 能控制应用程序生命周期的机制。 ( 3 ) m 皿p 包含的功能 为了便于移植,m i d p 并没有定义所有的功能,而是只定义了通用的最小功能集合, 以获得更强的移植特性。它包括: 用户界面:m i d p 提供了对手机设备的屏幕和硬件键的细粒度控制。在游戏图 形方面最新的m d p2 0 为游戏应用程序定义了一个完整的a p i ,而在3 d 图形 方面,j s r 1 8 4 试图标准化手机上的j a v a3 da p i 。 端到端传输协议:h t t p 协议支持在m i d p 中是强制性的,m i d p 2 0 在h t i v 的基础上提供了端到端的s m l p ( s e c u r e h y p e r t e x t t r a n s m i s s i o n p r o u ) c o l ,安全 超文本传输协议) 安全传输。 网络连接:m i d p 通过一般连接框架( g c f ) 来获得对网络连接的支持,在m i d p 2 0 中,程序可以通过p u s h 机制进行注册,然后设备在特定信息到达后就回 自动调用指定的m i d l e t 。 大连理工大学硕士学位论文 持续性存储:m i d p 上的标准数据持久性设备是记录存储管理系统( r m s ) 。 r m s 存储线性记录中的二进制数据( 按字节排列) 。它只提供搜索存储和对搜索 结果排序的功能,但是不允许随机存储也不支持任何分层的数据结构。 定时器。 应用的下载管理。 应用的生命周期管理。 2 。3k v m 2 3 1k 概念 c u ) 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 虚拟机也必定在执行 9 1 。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 其实就是计一算机上执行的一个特别软件。虚拟机的优点甚多,比如 移植方便,只需要移植虚拟机和相关的支持程序库到新的硬件架构上,所有上层的应用 程序都不需要更动就完成移植了。虚拟枧的另一个好处是它在计算机软硬件问加入一层 抽象分离和保护,可以防止恶作剧的程序暗中搞鬼( 比方说删除文件或破坏内存) 。 2 3 2k w 特征 k v m 设计的高级目标是生成尽可能小且完整的j a v a 虚拟机,它具有以下特征: ( 1 ) 小型的,虚拟机核心所占有的静态存储空间在4 0 k b 8 之间( 与编译选项 和目标平台有关) 。 ( 2 ) 清晰的,具有良好的注释和高可移植性。 ( 3 ) 模块化,可定制。 ( 4 ) 在不牺牲其它设计目标的前提下尽量完善和高速。 k v m 中的“k ”代表“千( k i l o ) ”。这样命名是因为它的内存容量用几十k b 来 衡量的( 而桌面系统是用兆( m ) 甚至是用千兆( g ) 来衡量的) 。k v m 典型地应用于数字移 动电话、传呼机、p d a 、p o s 终端、家用只能电器等等设备上面。 基于移动平台动画编辑器的设计与实现 2 3 3i ( v m 实现 k v m 实现所需的最小内存空间大约是1 2 8 k b ,包括虚拟机、最小的库和运行j a v a 应用程序所需的堆空间。一个更加典型的实现是需要总共2 5 6 k b 内存空间,其中3 2 k b 作为应用程序运行时的堆空间,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 4 手机平台的j 2 m e 集成在手机中j 2 m e 通常采用c l d c m i d p 结构【i o 】,这是j 2 m e 层次结构的实例之 一。其中c l d c 包括k v m 以及j 2 m e 的核心的a p i ,m i d p 包括用户接口( u i ) 和h t t p 连接等j 2 m e 语言完全兼容的。但也存在以下几个方面的缺陷: ( 1 ) 不支持浮点数据类型,即没有f l o a t 这种数据类型,类库中也没有包含 j a v a 1 a n g f l o a t 这个类。之所以这样做,重要是出于对c l d c 说面向的设备的 硬件功能方面的考虑,如设备内存有限,大部分硬件不支持浮点等。 ( 2 ) 不支持类实例( c l a s si n s t a n c , e ) 的总结( f i n a l i z a t i o n ) ,即不存在o b j e c t f i n a l i z e ( ) 方法。 ( 3 ) 有限的错误处理( e r r o r h a n d l i n g ) ,即大部分j a v a 1 a n g e r r o r 的子类都未被支持, 这主要是由于设备的内存限制。 ( 4 ) 不支持线程组( t h r e a dg r o u p s ) 或守护线程( d a e m o nt h r e a d s ) 。 在手机上,k v m ,c l d c ,m i d p 分别实现了j 2 m e 体系结构中的j a v a 虚拟机层、 配置层和描述层。 大连理工大学硕士学位论文 一个在p c 机开发环境中已经开发好的j 2 m e 应用程序,用j a v a c 程序对它们进行 编译。当程序的源程序被编译后,必须被预审核器预审核,然后才能生成可以被下载 到目标设备上运行的类文件。之所以有这一步骤主要是c l d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园美术教学活动方案
- 2025至2030中国主题餐厅行业项目调研及市场前景预测评估报告
- 2025先进环保过滤材料研发行业市场现状供需分析及投资评估规划分析研究报告
- 2025先进医疗影像技术研发行业市场现状分析及投资布局报告
- 2025供暖零件与供暖行业市场供需分析及投资评估商业化规划发展研究报告
- 小学语文识字教学创新方案
- 2026年建筑入侵报警系统合同
- 2023-2024年公立医院信息化项目招标分析报告
- 环境监测数据采集与质量控制方案
- 九年级美术课程教学设计方案及案例
- 基于PLC的四层电梯控制毕业论文
- 老年人皮内注射注意事项
- 规模羊场粪污处理与利用技术规程
- 2022年杭州市建德市公安局集中招聘警务辅助人员考试真题
- 《疫苗管理法》法律法规解读课件
- 体育与健康课程水平三短跑单元教案 站立式起跑以及起跑后的加速跑
- 铸件缺陷与铸件质量检测培训课件
- 《普通话》教学讲义课件
- 细胞生物学与医学遗传学考试试题及答案
- 质量审核员专业代码
- GIS应用开发ppt课件(完整版)
评论
0/150
提交评论