(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf_第1页
(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf_第2页
(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf_第3页
(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf_第4页
(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

(信号与信息处理专业论文)基于brew的cdma手机终端软件研究与模块设计.pdf.pdf 免费下载

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

文档简介

东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。 尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过 的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我 一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名:垃2 室茎日期:圣丝望:厘 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的复印 件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质 论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布( 包括 以电子信息形式刊登) 论文的全部内容或中、英文摘要等部分内容。论文的公布( 包括以电 子信息形式刊登) 授权东南大学研究生院办理。 研究生签名:煮数导师签名寝垫兰:日期:垃仝:臣 摘要 摘要 基于b r e w 的c d m a 手机终端软件研究与模块设计 2 0 世纪9 0 年代以来,移动通信技术飞速发展,到2 0 0 2 年底全球移动用户数超过了固定用户数。用 户不仅对语音通信要求提高了,同时对包括图像、视频在内的多媒体的服务要求更高,这就要求开 发出能满足于c d 蝴境下的多媒体手机。 b r e w 是b i n a r yr u n t i m ee n v i r o n m e n tf o rw i r e l e s s ( 无线二进制运行环境) 的缩写,是美国高通公 司( q u a l c o m m ) 为无线数据应用程序开发和执行提供的通用接口。b r e w 的开放性和可扩展性等 特点使得b r e w 在c d m a 手机的移动增值业务中扮演着重要角色。b r e w 作为主要的手机应用通用 开发平台:连接移动市场价值链,其中包括应用程序开发者、发行商、内容提供商、设备制造商、 运营商和用户,以及专门针对全球无线数据市场提供的全套产品和服务。正是基于这种b r e w 理念, 才使发行商、开发者、运营商和手持设备制造商只需投入少量资源和资金,便可开发和提供新的无 线数据产品和服务。 在传统c d m a 手机模块的设计上,其上层软件的设计中存在的代码结构复杂,可移植性差,可 扩展性差等缺点以及维护不易等困难。这些困难直接导致了研发周期长,造成研发成本增加,产品 的市场竞争力下降。本文设计并提出了新的上层应用软件设计方案一一基于b r e w 的上层应用软件 开发。这种设计方法易于添加新的功能,提高了系统的可扩展性,并且代码改动小,易于移植,复 用性强,大大缩短了研发周期,降低了研发成本。 论文首先介绍了课题研究的背景,阐述了课题研究的重要意义,接下来介绍了高通的b r e w 的 体系结构以及工作机制。在此基础上,提出了基于b r e w 平台的c d m a 手机终端的软件设计方案, 包括整体的系统设计、模块功能介绍以及模块的设计。然后重点设计了b r e wt a s k 模块、b r e w 应 用程序工作机制以及b r e w 应用程序的设计、实现。同时为支持应用程序之间的交互设计了消息传 递及分发机制。并且设计了支持数据存储的基于文件的数据库的实现。最后,对全文进行了总结并 指出了有待改进的方向,同时对c d m a 手机软件的进一步研究进行了讨论。 本文所提出的软件设计方案已成功应用到一系列的c d m a 手机终端中,这些终端现在己经开始 商用,并取得了较好的使用效果。 关键词b r e wt a s k 消息机制b r e wo e mb r e wc d m a a b s t r a c t a b s t r a c t s i n c et h e1 9 9 0 s ,m o b i l ec o m m u n i c a t i o n st e c h n o l o g yi sd e v e l o p i n gr a p i d l y ,a n db yt h ee n do f2 0 0 2 g l o b a lm o b i l es u b s c r i b e r se x c e e d e df i x e dn e t w o r k u s e r so fs p e e c hc o m m u n i c a t i o nn o to n l yi m p r o v e d ,a t t h es a m et i m et h er e q u i r yi n c l u d i n gi m a g e s ,v i d e o ,m u l t i m e d i as e r v i c e sa l s og r o w s ,i ti sr e q u i r e dt od e v e l o p c d m am o b i l ep h o n e so fm u l t i m e d i ae n v i r o n m e n t t h eb r e wi st h ea b b r e v i a t i o no fb i n a r yr u n t i m ef o rw i r e l e s s i ti sf o rw i r e l e s sd a t aa p p l i c a t i o n d e v e l o p m e n ta n di m p l e m e n t a t i o no fu n i v e r s a li n t e r f a c ep r o v i d e db yq u a l c o m m t h eo p e n n e s sa n d s c a l a b i l i t yo fb r e w m a k eb r e w p l a y sa ni m p o r t a n tr o l es u c ha st h em o b i l ep h o n ei nt h ec d m a v a l u e a d d e ds e r v i c e a st h em a i nm o b i l ea p p l i c a t i o n sg e n e r a ld e v e l o p m e n tp l a t f o r m ,b r e wc o n n e c tt h e m o b i l em a r k e tv a l u ec h a i n ,i n c l u d i n ga p p l i c a t i o nd e v e l o p e r s ,p u b l i s h e r s ,c o n t e n tp r o v i d e r sa n de q u i p m e n t m a n u f a c t u r e r s ,o p e r a t o r sa n du s e r s ,a n dp r o v i d e sg l o b a lm a r k e tc o m p l e t ew i r e l e s sd a t ao fp r o d u c t sa n d s e r v i c e s b a s e do nt h i sc o n c e p t ,i tm a k e sb r e wv e n d o r ,d e v e l o p e r s ,o p e r a t o r sa n dh a n d h e l dd e v i c e m a n u f a c t u r e ro n l yi n v e s ts m a l lr e s o u r c e sa n dc a p i t a la n dc a nd e v e l o pa n do f f e rn e ww i r e l e s sd a t ap r o d u c t s a n ds e r v i c e s i nt r a d i t i o n a lc d m am o b i l ep h o n em o d u l ed e s i g n ,t h ed e s i g no ft h es o f t w a r ei nt h eu p p e rs t r u c t u r eo f e x i s t i n gc o d ei sc o m p l e x ,p o o rp o r t a b i l i t y ,p o o rs c a l a b i l i t ya n dp o o rm a i n t e n a n c e ,e t c t h e s ed i f f i c u l t i e s l e dd i r e c t l yt ot h ee x t e n d e dd e v e l o p m e n tc y c l e , t h eg r o w t ho fr & dc o s t sa n dr e d u c t i o no fm a r k e t c o m p e t i t i v e n e s so fp r o d u c t s t h i sp a p e rd e s i g n san e wa p p l i c a t i o ns o f t w a r e ,t h ea p p l i c a t i o nm o d l ed e s i g n a n dd e v e l o p m e n tb a s e do nb r e w t h i sd e s i g nm e t h o di se a s yt oa d dn e wf u n c t i o n ,i m p r o v et h e p e r f o r m a n c eo fs y s t e ma n dt h ea d a p t i v i t yo fc o d ec h a n g e s ,e a s yt r a n s p l a n t a t i o n ,r e u s a b i l i t y ,s h o r t e nt h e d e v e l o p m e n tc y c l e ,r e d u c et h ec o s to fd e v e l o p m e n t i tf i r s t l yi n t r o d u c e st h eb a c k g r o u n do ft h er e s e a r c h ,e x p o u n d st h es i g n i f i c a n c eo fr e s e a r c h ,t h e n i n t r o d u c e st h es y s t e ms t r u c t u r eo fq u a l c o m mb r e wa n dw o r km e c h a n i s m b a s e do nt h i s ,i tp u t s f o r w a r dt h ec d m am o b i l et e r m i n a ls o f t w a r ed e s i g nb a s e do nt h eb r e wp l a t f o r m ,i n c l u d i n go v e r a l l s y s t e md e s i g n ,f u n c t i o nm o d u l ea n a l y s i sa n dm o d u l a rd e s i g n t h e ni n t r o d u c e se m p h a t i c a l l yt h eb r e w m o d u l ed e s i g n ,b r e wa p p l i c a t i o nw o r km e c h a n i s ma n db r e w a p p l i c a t i o nd e s i g na n dr e a l i z a t i o n a n d d i s t r i b u t i n gm e s s a g e si sd e s i g n e d f o rt h es u p p o r to ft h ei n t e r a c t i o nb e t w e e nt h ea p p l i c a t i o n s a n dad a t a b a s e b a s e do nf i l es y s t e mi sd e s i g n e df o rt h es u p p o r to ft h ed a t as t o r a g e f i n a l l y ,t h ef u l lt e x ts u m m a r i z e da n d p o i n t e do u tt h ed i r e c t i o na n dd i s c u s st h ei m p r o v e m e n t t h es o f t w a r ef o rc d m am o b i l ep h o n ef o rf u r t h e r r e s e a r c h t h i ss o f t w a r ed e s i g ns c h e m eh a sb e e ns u c c e s s f u l l ya p p l i e dt oas e r i e so fc d m am o b i l ep h o n e t e r m i n a l t h et e r m i n a li sc o m m e r c i a l ,a n dg o o dr e s u l t sh a v eb e e na c h i e v e d k e yw o r d s :b r e wt a s km e s s a g em e c h a n i s mb r e wo e mb r e wc d m a n 目录 摘要 目录 a b s t r a c t 目录 l h m 第一章绪论l 1 1 论文研究的背景。1 1 2b r e w 的概念1 1 3 论文的研究内容和结构安排2 第二章b r e w 开发环境。3 2 1 高通b r e w 基本架构3 2 1 1b r e w 系统的组成3 2 1 2b r e w 设备系统架构3 2 1 3b r e w 开发环境4 2 2b r e w 的事件机制5 2 2 1 处理一个事件。5 2 2 2 捕获系统事件。6 2 2 3 捕获用户接口事件。6 第三章基于b r e w 的c d m a 终端软件方案8 3 1 系统框架构成8 3 1 1 系统分析8 3 1 2 系统架构8 3 2a f wt a s k 9 3 2 1a e wt a s k 的功能9 3 2 1a f wf o c u ss t a c k 与b r e ws t a c k 之间的交互9 3 3b r e wt a s k 1 1 3 3 1b r e w _ t a s k 进程的功能和工作过程1 1 3 3 2b r e wt a s k 中消息传递结构的实现1 4 3 3 3b r e wt a s k 中的扩展机制1 7 第四章b r e w 应用程序的工作机制2 l 4 1b r e w 应用程序工作机制。2 1 4 1 1b r e w 应用程序的注册2 1 4 1 2a p p n a m e l o a d 函数2 6 4 1 3a p p n a m e _ c r e a t e i n s t a n c e 函数2 7 4 1 4b r e w 的通用事件处理函数b r e w a p p h a n d l e e v e n t 2 9 4 2b r e wa p p 与其他模块之间的交互机制3 0 4 2 1 通用规则3 0 4 2 2 消息机制。3 0 4 3b r e w 应用程序中有限状态机的实现3 7 4 2 1 状态机的定义3 7 第五章数据存储支持的设计一4 2 5 1b r e wo e m d b 的数据库的设计4 2 5 2o e m 层对电话簿的支持4 6 第六章b r e w 应用程序的实现一5 l 6 1b r e w 应用程序的构成5 1 6 2 电话记录模块的的设计5 1 6 2 1 电话记录模块的组成5 2 m 目录 6 2 2g a i na p p 的设计5 2 6 2 3b r o w s e ra p p 的设计5 6 6 2 4 电话记录中的扩展机制5 8 6 3 电话本模块的设计6 0 6 3 1 电话本模块的组成6 0 6 3 2c o n t a c t l l i s ta p p 的设计6 l 6 3 3f o r ma p p 的设计。6 4 6 3 4g r o u pa p p 的设计6 6 6 3 5 电话簿中的扩展机制6 9 第七章 7 1 7 2 总结与展望7 2 总| 2 i 7 2 展望7 2 参考文献 i v 第一章绪论 1 1 论文研究的背景 第一章绪论 2 0 0 8 年6 月,中国进行了“六合三”的电信改革重组完成后,3 张3 g 牌照也陆续发放。 发放的3 张3 g 牌基本采用三个不同标准,t d - - s c d m a ( 时分同步码分多址) 为中国自主研发 的3 g 标准,目前已被国际电信联盟接受,与w c d m a ( 宽带码多分址) 和c d m a 2 0 0 0 合称世界 3 g 的三大主流标准。这也预示着未来数年内与c d m a 相关的终端产品的需求和研发都会得到 巨大的发展。 c d m a 技术是1 9 8 5 年成立的美国q u a l c o m m 公司于1 9 8 9 年4 月在原美军移动通信扩频技术基础上开 发成功的。现在通信界人士普遍认为,c d m a 的发展势头己超过g s m ,并被认为是21 世纪的通信主角。 特别是在美国,目前移动通信市场上由联邦通信委员会( f c c ) 划分的5 1 个主要贸易区( m a t ) 中,在a 段和b 段频率( 各有3 0 m h z ) 已占有5 6 份额,而g s m 仅占2 0 份额,用c d m a 建网的个人通信系统( p c s ) 已 达约5 0 亿美元:而在c 段频率,在1 1 0 亿美元金额中,6 1 的运营者采用c d m a 系统,只有2 1 决定用 g s m ( 1 6 未定) 。 b r e w 作为主要的手机应用通用开发平台:连接移动市场价值链,其中包括应用程序开发 者、发行商、内容提供商、设备制造商、运营商和用户,以及专门针对全球无线数据市场提 供的全套产品和服务。这是q u a l c o m m 使用b r e w 设置的标准,也是b r e w 保持行业领先的关键 所在。正是基于这种理念,才使发行商、开发者、运营商和手持设备制造商只需投入少量资 源和资金,便可开发和提供新的无线数据产品和服务。b r e w 提供了b r e w 客户端软件、移植 工具、测试工具、技术支持、业务开发支持( o e m 关系) 以及设备规格和产品路标功能的相关 咨询服务。并且b r e w 还可使制造商将其产品快速推向市场,以及灵活方便地自定义其设备。 运营商可在b r e w 上层编写用户界面,从而无线更新其界面。 美国的终端设备制造商m o t o r o l a 投入巨资研究第三代手机终端的软件平台的设计与构建。与此 同时,互联网行业的新兴力量g o o g l e 也加入到手机终端软件的开发行列中,推出了a n d r o i d 智能手机 终端操作系统。这些都说明第三代手机已经不止停留在初步功能上,而是向着操作系统的方向迈进, 其最终发展发向应该是有着高速处理的芯片和高级智能系统的方向发展。 c d m a 技术在世界各地的发展使得以它为核心的移动终端设备也得到了迅速的发展。因此,研发 出具有自主知识产权且又能支持第三代移动通信标准的c d i a 手机模块,可以大大降低移动终端产品 的成本,提高终端设备制造的技术水平,使得终端设备更具市场竞争力。 在传统c d m a 手机模块的设计上,其上层软件的设计中存在的代码结构复杂,可移植性差,可扩 展性差等缺点, 以及使用传统状态机机制设计软件所带来的代码复用性低,维护不易等困难。这些 困难直接导致了研发周期长,造成研发成本增加,产品的市场竞争力下降。由于3 g 技术对多媒体 的强大支持,这也要求能开发出具有强大多媒体功能的终端软件平台,并且要求终端软件平 台开发快速、低成本。因此,研究基于3 g 标准网络的移动终端系统中的系统框架以及上层应用程 序以及用于在系统与应用程序同步的c d m a 手机模块,既是移动通信技术发展的需要,也是移动通信 市场的需要,具有较高的实用价值。 1 2b r e w 的概念 b r e w ( b i n a r yr u n t i m ee n v i r o n m e n tf o rw i r e l e s s ) ,是高通公司2 0 0 1 年推出的基于c d m a 网 东南大学硕士学位论文 络“无线互联网发射平台”上增值业务开发运行的基本平台。相对j a v a ,b r e w 是一个更底层的技术。 b r e w 提供一个高效、低成本、可扩展和熟悉的应用程序执行环境( a e e ) ,着重开发可无缝植入任何 实际手持设备的应用程序。制造商和开发人员可以随时对运行环境进行扩展,提供应用程序需 要的各种附加性能模块,如“无线互联网发射平台”中包含的多媒体、多种连接方式、位置 服务、用户界面、网络等功能套件。b r e w 提供的功能环境就好像p c 机上的操作系统一样, 可以通过服务提供商下载指定类型的应用程序或游戏来使用。同时,通过b r e w 接口功能,供 应商可以提供成套的完整的资讯、商务、娱乐功能。在将来的版本中,b r e w 内核类将能提供 诸如蓝牙技术、全球定位系统( g p s ) 和基于数据业务的电话等服务。由于需要更少的内部应 用程序开发和集成任务,设备制造商可以更加快速地推出新设备。用户可以选择和下载适合 自己个人喜好的无线软件。通过这种方式,用户将推动新的无线数据应用程序和服务市场的 发展l3 1 。 b r e w 所具有的特点: 第一,对于运营商而言,b r e w 技术与网络完全无关。这意味着它可以完全平等地应用于 所有领先的无线技术之中。 第二,对于设备制造商而言,过去移动数据服务的事实证明由于价格偏高,高效操作系 统并非实现无线数据应用的高效解决方案,而理想的情况是,应用应完美适用于各类不同档 次的电话,充分利用电话的资源,为用户带来无限美好的体验。b r e w 应用运行环境可以同移 动设备闪存和r a m 中的处理芯片紧密集成,从而实现广泛适用性。 第三,对于应用开发商而言,向市场快速推出新式应用是软件开发商赖以成功的关键所 在。b r e w 执行平台基于普及型编程语言c c + + ,这种语言拥有庞大的用户群,目前已有7 0 0 万程序员使用这种语言,他们只需掌握很少的移动电话知识即可实现b r e w 支持。 1 3 论文的研究内容和结构安排 本课题的核心任务就是提出基于b r e w 平台的c d 姒终端软件设计方案,通过分析b r e w 的特点以 及b r e w 的体系架构,利用b r e w 的可扩展性,给出了基于b r e w 的终端软件模块设计方案。本文设计 了基于b r e w 的终端框架,设计了b r e wt a s k 处理模块、i n a t i v e 扩展模块、b r e w 应用程序模块, 以及用来支持b r e w 应用程序的运行以及b r e w 应用程序之间的消息交互机制。同时设计了一套b r e w 应用程序工作机制,这样使得开发b r e w 应用程序更加方便。同时给出了电话记录和电话本两个b r e w 应用程序设计实例。 论文章节安排如下所示: 第一章绪论论述了论文研究的背景和本课题研究的意义,以及b r e w 相关观念及其特点。 第二章b r e w 软件平台该章节主要介绍了b r e w 的体系结构以及工作机制。 第三章b r e wc d m a 终端软件的总体方案该章节主要阐述了b r e wc d m a 终端软件的总体方案以 及模块组成,介绍了a e wt a s k 以及b r e wt a s k 的主要功能及其设计。 第四章b r e w 应用程序的工作机制该章节主要阐述和设计了b r e w 应用程序的工作机制。 第五章数据存储支持的设计该章节主要阐述了支持电话本数据存储的基于文件接口的简单 数据库的设计。 第六章b r e w 应用程序的的实现该章节主要阐述了电话簿和电话记录这两个应用程序的设计 过程及其工作过程。 第七章总结与展望。 2 第二章除e w 开发环境 2 1 高通b r e w 基本架构 2 1 1b r e w 系统的组成 第二章b r e w 开发环境 整个b r e w 系统由开发平台、运行平台和服务器三个要素组成。开发平台就是我们所使用的b r e w s d k ,用来在p c 端开发可以在运行平台运行的程序。运行平台就是指可以运行b r e w 应用程序的移动 通讯设备上的b r e w 运行环境,它的核心是b r e w 的p o r t i n gk i t 。服务器是连接开发和运行平台的 一个“连接器”,开发平台所开发出的b r e w 应用程序放在服务器上,以便于运行平台的用户通过无 线通讯网络下载应用程序,其核心是a d s ( a p p li c a t i o nd o w n l o a ds e r v e r ) 服务器,a d s 和其他的 辅助工具合起来统称为b d s ( b r e wd i s t r i b u t i o ns y s t e m ) 系统。在整个b r e w 系统中这三个要素缺 一不可,没有了哪一个都会让b r e w 显得不完整。它们之间的关系如下图: 图2 1b r e w 三要素之间的关系 在图2 1 中,m o b il es h o p 是b r e w 设备上管理应用程序下载部分的程序,意思是像一个商店一 样可以买程序。a p p l i c a t i o nm a n a g e r 是管理下载应用的程序。这两个部分都属于b r e w 运行平台的 一部分,而且是两个特殊的b r e w 应用程序。基本的流程就是使用b r e ws d k 开发的程序交给b d s , b d s 经过内部处理后,会根据应用程序所支持的b r e l r 设备,放在该设备的可下载程序列表中。b r e w 设备的使用者通过m o b i l es h o p 来获得可下载列表,通过网络下载感兴趣的应用程序,同时支付相 关的费用【2 0 j 。 b r e w 的三要素分别对应了b r e w 产业链里的三个主体,开发平台对应了b r e w 应用程序的开发者, 服务器代表了运营商,运行平台代表了b r e w 设备的使用者也就是用户。用户通过b r e w 下载自己喜 欢的程序,获得使用应用程序的乐趣,同时支付报酬。运营商通过对用户应用程序的下载获得收入, 而开发者则从运营商的用户下载收入中获得报酬。 2 1 2b r e w 设备系统架构 从应用的角度来看,b r e w 设备端是由六部分组成的:b r e w 接口、b r e w 类、a e e c l s i d 、应用接 口、扩展接口和模块。b r e w 接口包含该项服务的相关函数集合,如文件管理控件、外壳控件( i s h e l l ) 等;b r e w 的类是实现接口功能的;而a e e c l s i d 则是标识这些类的3 2 位身份码( i d ) ;应用接口即 是实现应用接口的类,用户的个性化应用将在这些接口中嵌入;扩展接口即是由开发人员、原始制 造商( o 蹦) 等添加的标准接口;模块则是包含应用程序和应用程序扩展代码的二进制文件。 从基本的层面而言,b r e w 平台就是手持设别上嵌入式操作系统的接口或者抽象层,如图2 3 所 示。实质上,该平台是一组用于本地执行、编译并链接的二进制库,优化后能使应用程序使用底层 3 i 提供的无线服务和资源。 断或恢复应用程序。 东南大学硕士学位论文 它控制流出或流入应用程序的事件流,能根据相应的事件启动、停止、中 c mw m sv rc m xs n dp d s m d m s s 图2 2b r e w 系统架构 正如图2 2 所示,高通b r e w 的系统架构是一个五层的结构,从上到下依次为:应用层、b r e wa p i 层、b r e wa p io 跚层、删、v r 等封装层以及a m s s 和d m s s 层。 应用层是采用下层提供的b r e wa p i 进行各种应用程序的个性化开发,具体包括u iw i d g e t s ( 用 户界面) 、c o r ea p p s ( 核心应用) 和u s e ra p p s ( 用户应用) ; b r e wa p i 层是提供标准的b r e w 应用接口,诸如:显示、声音、字体等,这些应用接口仅供开 发者使用,他实质上是应用接口的类,是封装好了的,开发者并不知道这些应用接口的二进制代码 是如何实现的。 b r e wa p io e m 层,它提供所有用于b r e w 开发的a p i 的具体实现。所谓0 酬,事实上就是方案提 供商根据用户的不用要求将其所需的功能整合在一起提供给用户。这一层的代码被封装起来,开发 者是不可见的。在实际的开发过程中,也不需要关心它的具体实现只要知道怎么使用就可以了。 e l l 、聃s 封装层是为上层应用软件的开发所进行的封装,如c m ( c a l lm a n a g e r ) 电话管理器、 删s ( w e bm a n a g e m e n ts y s t e m ) 内容管理系统等。 最低层的则是d m s s 层( d m s s 全称d a t am u l t i p l e x i n gs u b s y s t e m 数据复用予系统) ,d m s s 软件 系统是运行在i i s m 芯片组之上的系统软件,它支持a m p s ( 模拟) 和c d m a ( 数字) 两种制式,是c d 姒 手机上层软件运行的支撑平台,专门用于c d m a 系统的手机软件开发。软件包是一个复杂的系统,包 括从底层的实时操作系统到最项层的用户接口模块。 2 1 3b r e w 开发环境 b r e w 是一个可扩展的、面向对象的应用程序开发和执行环境,它使用c c + + 语言进行开发。同 时,b r e w 还被设计成了一个所见即所得开发系统。b r e w 支持应用程序和共享模块,应用程序和模块 做为独立的d l l 开发,运行时由模拟器载入。共享模块中可以包含功能模块,例如开发游戏时,可 以将增强功能的图形接口进行重新封装,做为应用开发中的接口使用,这些扩展接口可以同b r e w 标 准接口一样在应用程序中使用。 b r e w 提供了多组不同功能对象( 接口) 和功能,这些对象和功能统称为服务,这些服务包括: 1 、提供支持简单的基于事件的处理方式的应用程序服务。 4 第二章b r e w 开发环境 2 、提供访问文件系统、网络服务、内存和显示的核心服务。 3 、提供增强的图形功能、多媒体、声音和g p s 定位等增强服务。 4 、提供诸如支持浏览器开发的综合服务。 在这些不同功能和级别的服务中包含了b r e w 的多种类型的接口,如i s h e l l 接口负责应用程序 的控制和管理等功能;i d i s p l a y 负责显示的控制和屏幕刷新等功能。b r e w 的每一个接口使用一个 3 2 位的接口i d 表示,这个接口i d 叫做c l a s si d 。这些c l a s si d 都是由高通公司统一管理的,如 果需要公开自己开发的接口,那么必须使用高通的注册网页申请一个i d ,申请后这个i d 就会保留 下来给我们自己,不会再分配给其他的人。如果我们的接口只是做为本地测试使用,那么我们可以 使用自己定义的接口c l a s si d ,需要注意的就是不要与现有接口的i d 相同就可以了。每一个b r e w 接口都是继承自一个叫做i b a s e 的接口。 在使用一个接口之前,必须首先使用i s h e l l _ c r e a t e l n s t a n c e ( ) 接口函数创建接口实例。i s h e l l 的接口指针是通过调用i s h e l l _ c r e a t e l n s t a n c e ( ) 接口的当前应用程序,或接口的入口函数传递进 来的,不需要创建。创建实例后,这个接口实例的指针将通过i s h e l l c r e a t e i n s t a n c e ( ) 方法传递 回来。对于一些特定的接口不是通过这个方法创建的,而是通过其他方法直接返回的,如i i m a g e 接 口就是通过i s h e l l 方法获得的。_loadlmage0 b r e w 的应用程序也是使用一个3 2 位的d 来表示的,这个i d 也叫做c l a s si d ,它与接口的 c l a s si d 没有什么区别,而且是统一分配的。如果希望我们的应用程序能够分发给用户下载,除了 要经过测试以外,您还必须申请全球唯一的c l a s si d ,就像公开接口一样。要获得这样的i d ,我们 必须成为一个授权的开发者。 2 2b r e w 的事件机制 b r e w 应用程序最为基本的内容就是它的事件驱动和处理的机制,通过这样的机制,我们可以使 用相对简单的思路开发出我们所需要的应用程序。基于事件驱动机制开发的好处就是我们可以把复 杂的程序容易的分割成各个小模块程序,同时针对事件驱动机制的特点我们还可以实现一个状态机 的结构,这样的程序框架对于开发大型的应用程序来说是十分的方便的。 这一节我们将详细的剖析一下b r e w 的事件处理的方式,以及我们的应用程序是如何捕获和处 理它们的。 2 2 1 处理一个事件 与大多数的操作系统不同,我们的应用程序不需要采用的轮询的方式来查看是否有事件传递过 来,b r e w 系统将会根据相关的事件主动的调用应用程序的h a n d l e e v e n t 函数将事件传递给我们的应 用程序。这个区别是至关重要的,因为我们的应用程序在捕获一个事件的时候,必须进行尽可能简 单的处理。不像一些大型的操作系统平台,如w i n d o w sc e ,b r e w 运行在一个单线程的环境,因此, 我们必须尽可能快地处理每一个事件,这样才不至于影响系统的正常运行。否则,应用程序的表象 可能就会是响应用户非常迟钝,这样的应用程序是用户不会喜欢的h 】。 基于这样的一个b r e w 事件驱动环境,要求我们的应用程序及时处理事件。这意味着应用程序 应该迅速处理事件并立即返回。b r e w 将事件传递给应用程序时,应用程序会通过返回t r u e ( 表示已 处理) 或f a l s e ( 表示未处理) 来指示应用程序是否已处理事件。如果小程序必须将事件传递给其 它事件处理程序( 如控件或接口) ,它只需返回调用这个接口h a n d l e e v e n t 函数的结果。 b r e w 应用程序的事件处理( h a n d l e e v e n t ) 函数接受三种与事件相关参数的输入,它们分别作 为h a n d l e e v e n t 函数的第二、第三和第四个参数传递。下面是一个事件处理程序函数的示例: lb o o l e a nh a n d l e e v e n t ( m y a p p , p m e ,a e e e v e n te c o d e ,u i n t l 6w p a r a m ,u i n t 3 2d w p a r a m ) :i - 5 东南大学硕士学位论文 第二个参数为a e e e v e n t 类型,用于指定应用程序接收的主要事件。第三个和第四个参数是根据 接收事件来定义的短数据和长数据。这些值取决于事件本身,并根据事件的定义来定义。 典型的,我们的应用程序的事件处理函数是一个巨大的s w i t c h 语句的程序结构,在这个结构中 我们可以看到我们所感兴趣的事件,或者直接将某些事件传递到一些二级事件处理函数之中,这些 二级事件处理函数既可以是我们为了程序结构的清晰而编写的函数,也可以是某个控件或接口的事 件处理函数。 2 2 2 捕获系统事件 在我们的应用程序当中,最起码需要处理e v ta p ps t a r t 、e v ta p ps t o p 、e v ta p ps u s p e n d 和e v t _ a p p s u s p e n d 事件。而除了这些事件之外,应用程序中还可能涉及到的系统事件有: l 、e v t _ a p p _ m e s s a g e 事件。此事件表示当前系统发送了一个文本短消息到我们的应用程序中。 2 、e v t _ a l a r m 事件。此事件表示系统发送了一个闹钟事件到我们的应用程序之中。 3 、e v t _ n o t i f y 事件。此事件表示有一个系统的通知事件到达。发送通知事件的通常包括呼叫 等事件。我们的应用程序需要注册相应的通知事件才能接收到这些通知。 这些系统事件是属于b r e w 的系统级别的事件,无论当前我们的应用程序处在什么样的状态下, 都会处理这些系统事件。也就是说即便当前我们的应用程序处于关闭状态,也同样的可以接收到这 些系统事件。 我们还可以定义大于e v t _ u s e r 的事件代码,通过i s h e l l _ p o s t e v e n t 接口来向特定的应用程序 发送自定义事件。例如: l b r e t = i s h e l lp o s t e v e n t ( p i s h e l l ,c l a s s i d ,e c o d e ,w p a r a m ,d w p a r a m ) : i 其中p i s h e l l 是i s h e l l 接口的指针,

温馨提示

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

评论

0/150

提交评论