(计算机应用技术专业论文)基于java框架的移动通信技术研究.pdf_第1页
(计算机应用技术专业论文)基于java框架的移动通信技术研究.pdf_第2页
(计算机应用技术专业论文)基于java框架的移动通信技术研究.pdf_第3页
(计算机应用技术专业论文)基于java框架的移动通信技术研究.pdf_第4页
(计算机应用技术专业论文)基于java框架的移动通信技术研究.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

摘要 随着移动通讯技术的不断发展和支持j a v a 程序的手机的逐渐普及,使用j a v a 语 言开发的手机增值应用服务也将会越来越多。尤其是手机游戏业务受到手机用户、运 营商及s p 的青睐。w a p 技术在移动通信方面的引入使得以前有的或新的i n t e r n e t 业务 可以随时随地被用户访问。用户能从任何无线设备方便地接入和使用所提供的更多增 值业务而获益。 本文通过对j a v a 技术中j 2 m e 语言的深入研究,了解了j 2 m e 语言的特性、体系 结构、编程规范,熟悉了m i d p 应用程序状态及生命周期,熟练掌握了j 2 m e 的编程技 巧、运行、调试。依据以上的理论及实践作基础,完成了手机游戏r i c h m a n 的编写并 能够在模拟环境下顺利地运行。同对,还对移动网关进行了理论上的研究,分析了以 移动增值业务彩信为例的网关技术。 关键字:移动通信手机游戏w a pj 2 m e 模拟环境 a b s t r a c t a sd e v e l o p m e n to fm o b i l ec o m m u n i c a t i o n s t e c h n o l o g ya n dt h e c o n t i n u o u st h e p o p u l a r i t yo fm o b i l es u p p o r t e dj a v ap r o g r a m s ,t h ej a v al a n g u a g em o b i l ev a l u e - a d d e d a p p l i c a t i o ns e r v i c e sh a sb e e ni n c r e a s i n g m o b i l eg a m eb u s i n e s sa r ep a r t i c u l a r l ya m o n g m o b i l ep h o n eu s e r s ,o p e r a t o r sa n ds p w a p t e c h n o l o g yi nt h em o b i l ec o m m u n i c a t i o n sm a d e i n t e m e tb u s i n e s sb ea c c e s sb yu s e ra n y w h e r e ,a n y t i m e f r o ma n yw i r e l e s sd e v i c eu s e r se a s y a c c e s st oa n du s eo f t h ep r o v i s i o no f m o r ev a l u e a d d e ds e r v i c e sa n db e n e f i t s b a s e do ni n d e p t hs t u d yt oj 2 m el a n g u a g ei nj a v at e c h n o l o g y ,u n d e r s t a n dt h e c h a r a c t e r i s t i c so ft h ej 2 m el a n g u a g e ,a r c h i t e c t u r e ,p r o g r a m m i n gs t a n d a r d s ,a n df a m i l i a r i z e w i t ht h es t a t ea n dm i d pa p p l i c a t i o nl i f e c y c l e ,m a s t e rt h ej 2 m ep r o g r a m m i n gs k i l l s , r u n n i n ga n dd e b u g g i n g b a s e do nt h ea b o v et h e o r i e sa n dp r a c t i c e s ,c o m p l e t et h em o b i l e p h o n eg a m er i c h m a na n dr u ns m o o t h l yi ns i m u l a t i o ne n v i r o n m e n t a tt h es a n et i m e 。 t h e o r e t i c a l l ys t u d yo ft h em o b i l eg a t e w a y ,t a k et h em o b i l ev a l u e a d d e ds e r v i c ef o ra n e x a m p l eo f t h em m sg a t e w a yt e c h n o l o g y k e yw o r d s :m o b i l ec o m m u n i c a t i o n sm o b i l ep h o n eg a m e sw a pj 2 m e s i m u l a t i o ne n v i r o n m e n t 长春理工大学硕士学位论文原创性声明 本人郑重声明:所呈交的硕士学位论文,基于j a v a 框架的移动 通信技术研究是本人在指导教师的指导下,独立进行研究工作所取 得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个 人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献 的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明 的法律结果由本人承担。 作者签名习龇型年业月堑日 长春理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“长春理工大学硕士、博士 学位论文版权使用规定”,同意长春理工大学保留并向国家有关部门或 机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。本人 授权长春理工大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位 论文。 作者签名 指导导师 年芝码三细 年暨丛暑 1 1 研究背景 第1 章绪论 大家己经感觉到,我们身边的大部分人都拥有了自己的手机,利用手机和别人沟 通已经成为我们生活的一部分。在欧美,人们开始利用手机购买商品或是进行商务活 动;在f 1 本,手机的许多附加功能更是年轻人文化的一部分。丽即将来临的第三代无 线网络和宽频技术,更带给了我们对无线通讯未来的美好期望。手机作为一种随身携 带的通讯工具,人们不但希望它有强大的通讯功能,也希望它还能提供其它丰富的附 加应用功能。计算机可以从i n t e r n e t 网络上下载大量的应用软件来进行安装,充分利 用已有的硬件资源来扩展计算机功能,但目前手机除了使用生产商集成的软件外还不 具备下载和安装新应用程序的能力。不过,这种状况已经开始得到改观,因为各大手 机厂商开始陆陆续续推出了支持j a v a 应用程序的手机,譬如:诺基亚公司的7 6 5 0 , 7 2 1 0 ,摩托罗拉公司的a 6 2 8 8 ,3 8 8 和t 7 2 0 ,西门子公司的6 6 8 8 ,3 1 1 8 等等。这种集 成了j a v a 功能的手机可以让用户通过i n t e r n e t 自由地去为手机下载和安装各种j a v a 游戏和应用程序,实现手机功能的扩展,于是,开发手机应用程序就成为业界的一大 热点。现在,越来越多的厂商在s u n 公司、摩托罗拉、西门子或者爱立信等公司的技 术支持下,开始开发基于j 2 m e 平台的无线应用服务,主要方向为手机游戏、动画屏保、 电子图书、电子漫画、电子地图、证券软件以及企业应用等。 手机游戏是新兴移动增值业纠l 】行业的一个重要组成部分,如果深一层看手机的增 值业务,不难看出,手机网络游戏的推出会带出一个全新的产业链,虽然在目前类似 短信、彩信这样的业务中,这个产业链已经初具雏形,但未来的手机网络游戏必将把 这个产业链联系得更为紧密,同时,以宽带运营商和移动运营商牵头的手机网络游戏 与p c 网络游戏之间必将围绕用户掀起以产业链为单位的竞争,这种竞争的结果将会带 来手机业务一轮新的增长。手机有可能成为继电台、电视、报纸、互联网之后的第五 代媒体,在3 g 来临前夜,手机娱乐具有巨大的市场价值。研究手机网络游戏的开发及 标准的制定也具有较大的应用价值。 因特网和移动通信是近年来发展迅速的两种技术。它们的出现,极大地影响和改 变了人们的生活、工作方式。但在较长一段时间内,通过移动设备访问因特网还只是 人们的一个梦想。w a p ( w i r e l e s sa p p l i c a t i o np r o t o c o l :无线应用协议) f 2 1 就是在这 样一种背景下产生并发展的。w a p 的出现,将大大加快移动通信与因特网结合的步伐。 1 2 国内外研究的发展及现状 1 国际方面:在手机增值业务的几大功能里,最吸引运营商和诸家s p 的莫过于 手机游戏这一项增值业务,虽然手机游戏的最初类型并不是基于w a p 才能完成的,但 是依赖于目前无线通信网络的规模和技术实力,基于网络的手机游戏成为了手机增值 业务中备受关注的一项。 在国际上手机游戏的发展己逐步进入成熟阶段,尤其以日本、韩国和欧美地区的 发展为代表。日本在手机游戏领域占据了绝对的领导地位,在1 9 9 9 年包括北美在内的 很多国家和地区手机游戏还处于未起步的阶段,日本就已拥有超过3 0 万的手机游戏用 户,占全球手机游戏用户的7 0 以上。2 0 0 1 年初当短信游戏在全球逐步发展时,日本 著名的n t td o c o m o 已经推出了近5 0 0 款i - m o d e 手机网络游戏。根据预测到2 0 0 7 年, 日本的手机游戏市场规模将会增长到约6 亿美元。 韩国的手机游戏业务也走在世界前列,1 9 9 8 年韩国引入了w a p 游戏,2 0 0 0 年开始 提供基于本国c d m a 网络的下载游戏,2 0 0 1 年推出多媒体游戏业务并开始出口其手机游 戏产品给其他国家。而且近年来韩国网络游戏一直保持着高速增长的势头,也为手机 游戏的发展奠定了良好的用户基础。同时韩国的移动通信用户基础非常雄厚,在全国 人口中拥有手机的用户比例大大高于我国,加之韩国政府一直以来对无线通信行业的 大力扶持和引导,这些都促进了手机游戏业在韩国的繁荣发展。并且其手机游戏产品 的出口也给产业界带来不小的利润,出口的市场份额约为:美国5 6 、日本1 9 9 、欧 洲1 2 6 、其他国家1 1 5 a 与日韩相比,欧洲的手机游戏市场相对滞后,主要原因在于:移动终端方面由于 欧洲运营商和手机厂商之间不紧密的合作关系导致在新业务推出的时候,相应的终端 产品上市往往会滞后一段时间,从而造成业务推广的不利。运营商的运作体制和对s p 的收费模式也是阻碍手机游戏顺利推广的一大障碍。然而随着移动数据业务的不断发 展和市场压力的不断加大,欧洲的移动运营商已认识到自身的不足,做出了相应的调 整,如从日本引入终端等,这些举措都大大推动了欧洲手机游戏业务的发展。到2 0 0 3 年底,欧洲的手机游戏市场的环境己基本成熟,j a v a 手机已经十分普及,据预测2 0 0 8 年欧洲手机游戏市场将达到3 0 亿欧元,占移动网络娱乐内容收入的1 9 。 美国手机游戏市场起步虽晚,但是发展却十分迅速。从2 0 0 2 年秋天开始,美国大 多数移动网络速度得到了提升,更加适于手机游戏业务的发展。如今美国移动运营商 每月都在推出新的游戏,手机厂商也在不断推出新的支持手机游戏的产品。从游戏提 供的数量看,美国移动运营商已经大大超过了欧洲运营商。2 0 0 3 年手机游戏已经成为 美国众多移动数据下载应用的第一项。据预测到2 0 0 8 年,美国手机游戏用户将达到 6 5 0 0 万户的规模,美国手机游戏业务的迅速发展使手机这一平台有望成为继电脑、控 制杆、掌机游戏、互联网之后的第五大游戏平厶【”。 2 2 国内方面:据统计,2 0 0 5 年中国的手机游戏付费用户达到1 4 0 0 万,而且受到 未来3 g 网络投入商用所带来的影响及手机游戏软硬件的发展进步,在今后几年内手机 游戏这块市场将会出现较好的发展势头。预测到2 0 0 8 年手机游戏产业规模将达到3 0 9 亿,付费用户规模达到3 2 0 0 万人。 手机游戏的发展前景之所以被如此看好,其原因是多方面的。根据信息产业部的 统计,目前国内手机用户已经超过4 亿,那么按照8 一1 0 高端手机用户比例计算的话, 我国市场存在3 5 0 0 万配备了高端手机并且有充分消费能力的用户。假设这3 5 0 0 万用 户每人每月只下载一个游戏,每下载一个游戏收费5 元,那么一个月就有1 7 5 亿元的 市场,一年将近2 1 亿元。另外据调查在所有手机用户中有9 9 4 的用户玩过手机游戏, 每天玩几次手机游戏来消磨时间的用户达到4 1 9 ,而愿意为手机游戏付费的用户则达 到7 3 2 。这样的数量庞大的用户群体和可观的市场规模怎能不令运营商、s p 们大大 动心,正是看到了这一市场的潜力,众多s p 们纷纷成立专门的手机游戏部门,希望在 这一领域收获更多的利益。除了产业链上各部分的大力投入和努力,技术上的进步也 是促进手机游戏得到快速发展的一个重要原因,目前的g p r s 和近在眼前的3 g 所带来 的高速数据传输也为下载、联网手机游戏铺平了道路。 中国互联网络信息中心( c n n i c ) 第2 0 次中国互联网络发展状况统计报告报 告显示,截止2 0 0 7 年6 月3 0 日,我国内地网民总人数达到1 6 2 亿,宽带网民数达1 2 2 亿,手机网民数较去年翻了2 6 倍,已有4 4 3 0 万人。 比邻日韩的无线网络发展如火如荼,中国移动通信用户和互联网用户的也随着高 速增长,奠定了增值业务快速发展的基础。中国的移动增值用户规模2 0 0 6 年己达到3 亿6 0 0 0 万户,预计2 0 0 8 年将达到4 亿9 0 0 0 万户。2 0 0 6 年w a p 用户数已达到1 1 亿户, 预计到2 0 0 8 年中国w a p 用户规模将达到2 3 亿户。中国w a p 整个市场规模预计到2 0 0 8 年达到2 2 0 亿元人民币,巨大的商业机会不言而喻1 4 j 。 随着3 g 时代的脚步越来越近,网络传输速率的大幅提高和手机游戏种类的日益丰 富都给手机游戏业带来了更广阔的发展空间,同时随着手机游戏这种休闲娱乐方式渐 渐深入人心,在资费下调和终端升级的促进下手机游戏将成为增值业务中不可忽视的 部分。 1 3 论文的主要工作及结构 1 3 1 论文的主要工作 本文以时下较为流行的手机增值业务手机游戏的开发为背景,利用j a v a 语言 中为专门针对嵌入式设备及消费类电子产品而提出的微型版本j 2 m e 技术对手机平台 土的游戏实现进行设计,并对移动网关加以研究。各部分拟要做的工作叙述如下: 1 j 2 m e 在手机平台上的应用 这一部分是在深入学习j 2 m e 相关知识的基础上,采用j 2 m e 语言的特有性质和设 计思想对手机平台上的游戏软件开发进行总体设计。将要实现的工作如下: ( 1 ) 要深入学习j 2 m e 语言的理论和方法。掌握这门语言的编程方法和规范。对 m i d p 的状态及生存周期进行研究学习。 ( 2 ) 根据对j 2 m e 语言的相关知识,对手机平台上的游戏开发进行总体设计。对具 体操作中可能出现的问题进行分析,并提出设计的目标及其理念。 2 对移动通信网关应用的研究 这一部分主要是对移动网管在理论上加以研究和探讨。在对移动网关详细研究后, 对具体的实例进行理论分析。 ( 1 ) 对移动网关的概念及结构等理论进行认真的学习,然后对可实现移动网关的 w a p 技术进行全面的认识。 ( 2 ) 针对移动增值业务中的彩信业务,对移动网关及w a p 技术在网关上的应用进 行分析说明。 3 模拟手机平台环境上游戏软件的实现 这一部分主要是在模拟手机平台这个环境下,利用前面提到的对j 2 m e 理论知识的 理解,进行游戏软件的具体设计。 ( 1 ) 要根据对应用软件的熟悉,搭建一个模拟的手机平台,方便程序的实现。 ( 2 ) 要画出系统的数据流程图和模块图,把整个系统划分成合理的几个模块,并 在此基础上进行这个程序流程图的设计,同时采用陀m e 语言来实现。 1 3 2 论文的结构 依据上一节中所述的内容,按照要实现部分的先后顺序可将本文分为五章。 第一章介绍了手机平台上的游戏开发的研究背景及研究现状。并对论文的主要工 作做以介绍。 第二章介绍了游戏软件开发所应用到的j 2 m e 技术,详细分析了开发的中需要解 决的问题,并详尽的阐述了设计的目标以及设计的理念作了总体的构想。 第三章介绍了移动网管的基础理论知识,并在这一理论知识的指导下,详细分析 了关于移动彩信业务中移动网管的应用。 第四章详细叙述了这个游戏软开发过程,通过系统的流程图,各个模块的框图, 各模块之间的关系图来完成软件的开发。具体应用到了j 2 m e 语言。 第五章为总结。在结束语中对本文所做工作进行了总结,指出了对该研究工作的 未来展望等。 4 2 1 , j a v a 技术 第2 章手机游戏开发原理及总体设计 j a v a 的核心是面向对象编程1 5 1 。事实上,所有的j a v a 程序都是面向对象的。那么什 么是面向对象编程昵? 我们知道,所有的计算机程序都由两类元素组成:代码和数据。 此外,从概念上讲,程序还可以以它的代码和数据为核心进行组织编写。也就是说一 些程序围绕“正在发生什么”编写,而另一些程序则围绕“谁将被影响”编写。这两 个元素决定程序的构建方法。第一种方式被称为面向过程的模型,用它编写的程序都 具有线性执行的特点。面向过程的模型可认为是代码作用于数据,例如c 语言。第二种 方式就是面向对象的编程了,面向对象的编程围绕他的数据和为这个数据严格定义的 接口来组织程序。面向对象的程序实际上使用数据控制对代码的访洲“。 面向对象编程的一个实质性的要素是抽象。人们通过抽象思维来处理复杂的事物。 例如,人们不会把一辆汽车想象成有几万个相互独立的部分所组成的一套装置,而是 把汽车想象成一个具有自己独特行为的对象。这种抽象是人们可以很容易地将一辆汽 车行驶到某个地方,而不会因为组成汽车各部零件过于复杂而不知所措。他们可以忽 略引擎、刹车等工作细节,将汽车作为一个整体来加以利用。 j a v a 语言自身根据市场的需求细分为墨个版本:j 2 e e ( j a v a2e n t e r p r i s ee d i t i o n ) , j 2 s e ( j a v a2s t a n d a r de d i t i o n ) ,j 2 m e ( j a v a2m i c r oe d i t i o n ) ,分别是针对企业级 开发的j 2 e e 、针对普通p c 机应用的j 2 s e 和s u n 公司专门针对嵌入式设备及消费类电子产 品而提出的微型版本l ”。 每一个j a v a 版本都是以下技术的集合: 1 不同的j a v a 虚拟机。 2 。不同的库和a p i 函数。 3 不同的配置和描述。 5 图2 1j a v a 平台及其目前市场 图2 1 表明了j a v a 的不同版本和它们的目标市场,从左侧最高端的平台开始一直到 右侧最低端的平台为止。基本上标识了5 个目标市场或者说是广泛的目标设备类型。 j 2 e e 提供对服务器和企业级计算机的支持,j 2 s e 提供对桌面和个人计算机的支持,j 2 m e 提供对高端和低端消费类设备的支持。 2 1 1 为什么使用j 2 m e 目前,手机上的应用软件开发几乎都是基于j 2 m e 平台,这是为什么呢? 让我们回顾一下手机的发展历史,我们不难发现它的发展经历了三个阶段:早期 的传统手机通常只有通话和短消息功能,只能提供基本的语音服务,这是第一阶段。 到了第二阶段,手机上又增加了一些简单的附加应用,如电话簿和电话铃声编辑等功 能,使手机的功能变得比较多样化了。然后,随着无线通信业的迅速发展,手机也发 展到了第三阶段,开始有了访问i n t e r n e t 的功能。在过去的几年里,无线通信业呈现 了爆炸式的增长。与此同时,人们己经变得越来越依赖于i n t e r n e t 网上的信息,而且 希望不但能够通过他们的计算机,而且能够通过手机来访问i n t e r n e t 网上的信息。虽 然目前的无线网络只能提供有限的数据传输率,允许用户每秒仅仅传输最多几十k 位 的数据,但是,即将来临的第三代无线网络将会提供从每秒几百k 位到几兆k 位不等 的数据传输率,从而将会有足够的带宽来传输实时视频信号和高质量的音频信号,也 可以下载大量的应用和服务软件。 然而,随看无线i n t e r n e t 新应用的出现,新的问题也随之出现。首先面临的是开 发瓶颈的问题。目前,手机类嵌入式系统普遍使用c 语言和专用的实时操作系统,不 仅开发速度慢,而且没有动态加载应用程序的能力,导致手机上的应用程序开发很困 6 难。一方面。单纯依靠手机厂商自身的软件开发能力难以满足市场的需求,另一方面 广大的软件开发商却又无法参与进来,开发适用于手机的应用程序,这无疑极大地制 约了新应用的推广与普及。 j 2 m e 的出现则使上述问题迎刃而解。因为j 2 i e 是基于j a v a 语言的,所以它天生 就具有以下优点: 1 动态内容传输。新的应用、服务和内容可以通过不同类型的网络动态下载。 2 安全。类文件校验、明确定义的应用程序编程接口和安全组件确保了第三方应 用程序的行为是可靠的,不会对设备或者网络造成损害。 3 交叉平台的兼容性。标准化语言组件和库意味着由于支持j 2 m e 配置和描述所 带来的约束使应用和内容可以在不同设备之间灵活地传输。 4 离线获取。不用激活网络连接,应用就可以被使用。这种特点降低了传输费用, 减轻了可能的网络故障带来的影响。 5 一种功能强大的现代面向对象的编程语言,j a v a 相对于当前用于无线软件开发 的编程语言和工具来说具有更加完善的抽象机制和更高级的程序构造,这使得 应用开发更加有效。 6 巨大的开发者团队。据估计,在全球有超过3 0 0 万的j a v a 软件开发者。j a v a 也正迅速地变为和c 语言一样在学院和大学里被用于教学的流行的编程语言。 2 1 2j 2 m e 概述 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 2 m e 技术编写的应用程序可升级至j 2 s e 和j 2 e e 平台;保留了j a v a 语言的优良特色, 网络传递极为安全;以及现有的j a v a 平台上广泛的开发工具,企业、开发人员能够为 j 2 m e 提供良好物质和人力支持等。 2 1 3j 2 狐的体系结构 目前j 2 m e 平台主要分为两大体系: 一是基于c d c 的c v m i c d c 、f o u n d a t i o np r o f i l e 体系,该架构针对于内存需求相 对较大,一般大于等于2 m b 、处理器能力较强的设备如。电视机机顶盒、车载娱乐设备 等:另外一种是基于c l d c 的k v m 、c l d c 、m i d p 体系架构嘲,针对于内存1 2 8 k b 一5 1 2 k b , 资源受限的小型设备如手机、p d a 等。本论文所要研究的基于手机编程的软件开发适用 于第二种体系结构。 2 1 4k v l i 图2 2j 2 m e 的体系架构 c l d c 和m i d p 都是运行在s u n 公司的k v m 上。k w 是一个专门为小型、资源受限设 备所设计的紧凑的、便携的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 其实就是计算机上执行的一个特别软件。虚拟机的优点很多,比如移 植方便,只需要移植虚拟机和相关的支持程序库到新的硬件架构上,所有上层的应用 程序都不需要更动就完成移植了。虚拟机的另一个好处是它在计算机软硬件问加入一 层抽象分离和保护,可以防止恶作剧的程序破坏( 比方说删除文件或破坏内存) 。 2 1 5 配置和描述 “移动设备”这个术语却涵盖了相当广泛的领域,给这些五花) k l 3 的移动设备提 供一种普遍适用的开发平台是很难做到的。所以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 ) 。 1 、配置( c o n f i g u r a t i o n ) j 2 m e 中,所有的应用程序都是针对特定的描述编写的,而描述是基于或者扩展了 一个特定的配置。因此,配置所有的特征都会包含到描述中并且可以被为这个描述编 写的应用程序所使用。配置定义了一个j a v a 平台,这个平台具有相似的对于内存容量 和其它硬件特征的要求。更加明确的说,配置; ( 1 ) 指定了支持的j a v a 编程语言的特征 ( 2 ) 指定了支持的j a v a 虚拟机的特征 8 ( 3 ) 指定了支持的基本j a y a 库和 p i j 2 m e 通过对配置的抽象来处理大量千差万别的移动设备硬件功能。j 2 9 e 的配置定 义了特定设备可用的虚拟机和低级a p i ,同时提供相应的开发基础。目前可用的配置有 两种,它们是连接设备配置( c i ) c ,c o n n e c t e dd e v i c ec o n f i g u r a t i o n ) 和有限连接设备 配置( c l d cc 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 ) 。 连接设备配置c d c c o g 应用于相对内存量较大、更强处理器的移动设备。c o g 规范采用了内存优化的 虚拟机,也就是所谓的c ,通过它提供等同标准j v m 的特性。按照s u n 的文档说明, c o g 针对新型p d a 、智能通讯设各和机顶盒之类的高端设备。为了能够受到c d c 支持, 移动设备必须至少具备以下条件: ( 1 ) 用于c 和j a v aa p i 库的2 船内存。 ( 2 ) 3 2 位微处理器或者控制器。 ( 3 ) 可用网络连接,最好是高带宽连接。 连结有限设备配置c l d c c o g 的要求有利于昂贵的手机、i r 扫描仪或类似产品。c l o g 则主要针对那些更轻 便、更便宜、不能满足c o g 要求的设备。它的设备需求如下: ( 1 ) 最低1 6 0 k b 的内存,其中1 2 8 k b 用于k y i d 和运行时库 ( 2 ) 最低1 6 位2 5 m h z 处理器 ( 3 ) 有限的用户界面功能 ( 4 ) 没有( 或者间歇的) 低带宽网络连接 那么c d c 和c l d c 关系又是怎样的呢? 为了避免混乱,j 2 m e 只有相当有限数量 的配置。到目前为止,只有两种标准的j 2 m e 配置可用: ( 1 ) c l d c :这个配置致力于低端的消费类设备,c l d c 的目标设备典型的例了包括 个人的、移动的、电池供电的、互联的信息设备像手机、双向传呼机和个人信息管理 器。这个配嚣包括一些新的类,并非全部来自j 2 s e 的a p i ,而是特别为适应小型设备 而设计的。 ( 2 ) c d c :这个配置致力于高端的消费类产品。c o g 的目标设备典型例子包括共享 的、互联的信息设备像电视机机顶盒、i n t e r n e t 电视和高端的通信设备。这个配置包 含了比c l d c 更加复杂的j a v a 库和虚拟机的集合。 c o g 基于c l d c 基础上,包含了c l d c 所有的类和接口,c l o g 平台上的软件都可以 直接在c o g 上运行。不过虽然c d c 功能上要比c l o g 强大许多,但是其可以使用的 p a c k a g e 仍然大大少于j 2 s e 的包。j 2 s e ,c l o g ,c o g 三者之间的关系如下图2 3 所示唧: 9 图2 3j 2 s e 、c l d c 、c d c 三者关系图 2 、描述( p r o f i l e ) 如果说配置为应用程序提供了硬件抽象基础,那么,描述则对应用程序的软件接 口进行了抽象。描述专门针对特定配置定义了一整套j 2 m e 应用程序可用的a p i 类,它 完善了配置,为某个具体的设备类别或某个具体的应用程序提供更高的性能。这里的 关键就是描述只是完善配置,没有配置和虚拟机提供应用程序核心类接口和运行时环 境的话,描述也不会工作。通常,描述为一种给定的设备类别提供用户界面、输入法、 持久性存储机制。这类描述被认为是发展这些设备应用程序的完整工具包。 s u n 公司推出了两种可用的j 2 m e 描述:基础描述( f o u n d a t i o np r o f i l e ) 和移动信 息设备描述( m i d p m o b i l ei 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 配置上定制的用户接口和输入输出类。 2 1 6l t i d p lm i d p 类库 m i d p 类库建立在c l d c 类库基础之上。因此许多类都来自j 2 s e 。为了实现特定功 能,m i d p 增加了一些新的类库f l o l ,这些类总结如下表2 1 所示。 表2 - 1m i d p 中的类包总结 u i d p 类所在包的名称说明 核心包 j a v a 1 0 通过数据流提供系统的输入输出 m i d p 语言类,在c l d c 中j a v a 1 a n g 包的基 础之上增加了来自j 2 s e 的 j a v a 1 a n g i l l e g a l s t a t e e x c e p t i o n m 1 d pr :具类,在c l i ) c 中j a v a u t i1 包的基 础上增加了来自j 2 s e 的以下类: j a v a u t i l t i m e r 1 0 麻j ;j 程序生存周期 j a v a x m i c r o e d i t i o n m i d l e t m i d l e t 包定义了m i d p 应用程序,以及应用 程序和它所运行于环境之问的交互 埘户界面 j a v a x m i c r o e d i t i o n i c d u i 为m i d p 应用稃序提供用户界而 持久存储 j a v a x m i c r o e d i t i o n 加s这个包用来为m i d l e t 提供持久存储机制,应 爿j 程序可以存储数据,在以后需要的时候获 取这些数据 网络 j a v a x m i c r o e d i t i o n i o m i d p 提供了基于c l d c 通用连接框架的网络 支持,在c l d c 的基础上,增加了类 j a v a x m i c r o e d i t i o n i o h t t p c o n n e c t i o n , 这个类用来建立h t t p 连接。 2 m i d p 应用程序状态及生存周期 ( 1 ) m i d l e t 状态图【l l l d e s u o y a p p o 构造 图2 4m i d l e t 状态及状态转换 暂停状态( p a u s e d ) :当一个m i d l e t 程序刚好被启动但是还没有进入它的 s t a r t a p p 0 方法时处于暂停状态。调用p a u s e a p p ( ) 或者n o t i f y p a s u s e d ( ) 方法也会使 m i d l e t 程序暂停。当处于暂停状时,m i d l e t 应用程序只保持尽可能少的资源。因为c l d c 并不支持确定的实时行为,所以系统并不要求使用暂停状态来实现电话的实时部分和 j a v a 环境之间的切换。 运行状态( a c t i v e ) :正如其名称所示,意味着m i d l e t 正在运行中。当m i o l e t 进 入它的s t a r t a p p 0 方法时就处于运行状态。此外,调用r e s u m e r e q u e s t ( ) 方法也会使 m i d l e t 程序从暂停状态转换到运行状态。当处于运行状态时,m i d l e t 可以为最佳的执 行效果而获得并保持所需要的资源。 销毁状态( d e s t r o y e d ) :当d e s t r o y a p p 0 方法或n o t i f y d e s t r o y e d ( ) 方法被调用时, m i d l e t 就处于销毁状态。一个m i d i e t 程序一旦进入了销毁状态,它就不能再进入任何 状态了( 除非j a v a 管理器又重新启动该m i d l e t 应用程序) 。当处于销毁状态时,m l d l e t 程序将释放占有的所有资源。 其s t a r t a p p 0 ,p a u s e a p p ( ) ,d e s t r o y a p p 0 方法是由系统调用,m i d l e t 程序员一 般不在程序中主动调用这三个方法。程序员为了控制m i d l e t 程序的状态转换,可以使 用下面的三个方法: r e s u m e r e q u e s t ( ) 方法:这个方法被处于暂停状态的m i d l e t 调用,表明它希望重 新进入运行状态。这种方式主要用在一个暂停的m i d l e t 处理一个定时器超时,需要恢 复运行。 n o t i f y p a u s e d ( ) 方法:这个方法允许m i d l e t 给系统一个信号说明它自动进入暂停 状态( 释救掉尽可能多的资源后安静下来) 。使用这个方法韵一个倒子是一个基于时问 的m i d l e t 设置了定时器并且在定时器超时之前没有任何事情要做。 n o t i f y d e s t r o y e d ( ) 方法:这个方法通知系统m i d l e t 已经释放了它占有的所有资 源,将主动进入销毁状态。f 1 2 j q 1 6 】 ( 2 ) m i d p 生存周期 一个典型的m i d l e t 按照下表2 - 2 所示的执行序列来往成自己的生存期。 序列 应用管理软件m i d l e t l 应用管理软件生成一个新的b i d l e t 实倒 调用m i d l e t 的构造 函数,处于暂停状 态 2 应用管理软件确定适合m i d l e t 运行的时期,并m i d l e t 获得它所需 调用使m i d l e t 进入活动状态的s t a r t a p p 0 方要的任何资源并 法开始执行它的服务 3 应用管理软件需要当前m i d l e t 尽量减少它对资 m i d l e t 停止执行它 源的消耗,以便将这些资源临时用于其他任务。的服务,井尽晕释 此时,应用管理软件通过调用p a u s e a p p 0 方法放它所r 有的资源 向m i d l e t 发出信号要求暂停服务。 4厢片j 管理软件决定个冉焉墨这个m i d l e t 了,或m i d l e t 保存所有缓 者可能是要为内存中优先级更高的程序释放空存数据,并执行清 间,冈此它通过调用d e s t r o y a p p ( ) 方法发出信除j :作。 号,通知这个m i d l e t 等待销毁。 2 2 手机游戏开发总体设计 2 2 1 设计中需要考虑的问题 移动电话的发展月新月异,如果试图跟上每一款新式的移动电话的技术规格,与 此同时跟上混合设备的新款,那是不切合实际的。做如此的设计开发,只能是使开发 的成本和维护的成本大大增加。所以所作的工作应该是能在广泛的通用的平台上构建 游戏。p l a y s t a t i o n2 就是一个很好的例子,在全球它拥有数十亿的销售,虽然有其他 因素的制约,但正是这如此广泛通用的平台,才使得全球如此之多的开发者投入其中。 j 2 m e 平台为丌发提供了一个广泛而通用的平台,虽然如此,但在丌发时仍然有很 多因素值得去考虑。 ( 1 ) 移动电话的有限处理能力 1 2 现在支持j 2 m e 平台的手机不在少数,但基本只能提供非常有限的处理能力。移动 电话的硬件能力不足,这一点很是限制能够游戏开发者所能提供的游戏类型。虽然在 移动电话的不断更新中处理能力得到不断的加强。英特尔p x a 2 7 x 处理器系列在当前的 手机处理器中算业界领先的,其时钟频率也只是自3 1 2 删z 至6 2 4 m h z 。现在全球最大的 手机芯片供应商德州仪器所力推的0 m a p 2 系芯片,其时钟频率也只是3 3 0 e q z 。相对于 通常的台式机的芯片来说,性能差距很大, 能力的不多。所以从移动手机的硬件来看, 用程序的需求。 。 ( 2 ) 移动电话的可视屏幕尺寸有限 且现在大部分使用的手机拥有如此的处理 其处理能力还远远不能处理复杂的游戏应 移动电话的可视屏幕的范围都不是很大,随着近些年技术的发展,屏幕也变得越 来越大了些,但相对于通常所适应的大小,还是显得小了些。对于开发来说还有一点 比较头痛的是,没有一个“标准”的可视屏幕的大小,所以都要依赖所开发游戏的目 标移动电话的可视屏幕大小。对于型号的不同,往往意味着可视屏幕大小的不同。也 意味着处理的增加。对于特殊型号的移动电话所定制的图像和代码在适应性和可移植 性就显得很差了。 ( 3 ) 内存配置有限 作为游戏应用程序的运行基础,内存在游戏中是消耗比较大的。但令人比较尴尬 的是,现在的移动电话上的物理内存都很有限。移动电话内的r a m 内存一般都不会超 过6 4 m 。这大大制约了移动电话上的游戏开发。从一定程度上可以说是开发的瓶颈。对 于这个现象,移动电话的生产厂商因为生产成本的缘故不会对此做什么,因为没有现 实的理由要求他们这么做,要是移动通讯的运营商也加入到游戏供应商的行列的话, 局面可能会好些【l ”。 ( 4 ) 数据传输的速度 对于单机版的游戏来说基本不会存在这个问题,只要从服务商那里下载到手机里 后运行即。可对于网络游戏来说,网络上的数据传输速度是游戏成功的关键之一。移 动电话端可以向服务器端所发送的数据量的大小不仅受到网络传输速度的影响,也受 到网络稳定性的影响。数据在移动电话端和服务器端收发要经过基站、网关、中继站 等。例如现在,中国移动的g p r s 网络,网络带宽和网络稳定性都不很好,这就给通过 此网络进行传输数据的网终游戏的开发带来了很大的制约。 ( 5 ) 帧的刷新率 游戏的表现都是通过帧的刷新来体现,要是对于游戏在帧方面有特别要求的游戏 应用,对于此方面就要特别考虑此问题了。 ( 6 ) 颜色 由于移动电话的内存比较有限,所以在表现颜色方面必须比较小心,才能用较少 的内存来完成工作。在遮挡问题上,以及a l p h a 通道管理上也需要注意。资源文件的 大小得小心控制。 1 3 ( 7 ) 音效问题 移动电话上的音效方面在逐步的提高。但其表现力还是不能令人说是满意。在游 戏中音效的表现及控制也是要注意的。尤其是对于当前的j 2 m e 平台上的游戏应用来说, 声音的表现力是一个软肋。在控制方面的代码编写上,也时常令人头疼。 ( 8 ) 移植性问题 对于不同移动电话所提供的能力,移植问题也是要多加考虑的。诸如对不同标准、 不同协议的支持。上述的可视屏幕大小的问题,诸如此类的都是要在开发中注意的。 ( 9 ) 按键问题 对于移动电话的使用者来说,同时按键和连续按键都是已经习惯的操作手法。当 前的移动电话对于同时按键是不提供支持的,对连续按键的支持也要游戏的开发者特 殊处理。这使得在开发中要重新考虑游戏类型的选择和游戏控制类型的实现。 2 2 2 设计目标 基于移动电话的硬件条件( 尤其是其处理能力和物理内存) 和j 2 m e 平台的特性,对 于实现要做到以下目标: ( 1 )可用性 ( 2 )高可复用性 ( 3 )良好的可扩展性 ( 4 )良好的版本控制 ( 5 )提供高效的开发平台 ( 6 )易测试性 ( 7 )性能良好 2 2 3 基于组件的设计 计算机软件技术的发展使得越来越多的新技术加入到开发领域。组件技术就是其 中的佼佼者,在实际的应用开发中得到了越来越多的应用。逐渐发展成为软件开发环 境中的基本组成之一。组件作为整个构架的基本元素,用以构造其他的组成部分,组 成整个应用的构架。组件要有明确的定义,通过对象或功能模

温馨提示

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

评论

0/150

提交评论