




已阅读5页,还剩64页未读, 继续免费阅读
(通信与信息系统专业论文)基于symbian平台的ims终端视频通话应用的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆邮电大学硕士论文 摘要 摘要 随着国家对三网融合政策的逐步明朗,运营商正在积极准备业务网络的i m s 改造,从而承载全新的多媒体融合业务。中国移动在去年1 2 月就开始进行i m s 招 标,并在全国1 4 个省市部署i m s 网络,同时在今年进行i m s 的商用运营。中国 电信和中国联通也考虑在今年部署i m s 网络以增强多媒体业务的提供能力。 i m s 的运营主要针对核心网、业务平台、接入侧和终端这四个部分,i m s 终 端直接面对用户,给用户带来最直接的i m s 体验,因此对i m s 终端的研究与实现 有着重要的意义。随着多媒体资源的丰富共享,i m s 终端的支持平台需要扩展至 主流智能手机操作系统如:s y m b i a n 、l i n u x 、w m d o w sm o b i l e 等。 s y r n b i a n 操作系统是现今手机领域中应用范围最广的,占据统治地位的操作系 统。其成熟度较高,并具有高效内存管理机制等众多优秀性能。 本课题来自重庆市教委科研项目:“i m s 智能终端软件关键技术研究,主要 目标是实现支持不同平台的i m s 智能终端业务。在整个课题研发过程中,作者主 要承担s y m b i a n 平台l m s 终端视频通话应用的研究与实现。论文是这样组织的: 第一章,通过分析s y m b i a n 平台i m s 终端视频通话的背景、现状与需求,阐 述本课题主要研究内容。 第二章,理解s y m b i a n 平台的特点、内存管理机制、多媒体框架等相关知识。 第三章,深入研究本课题涉及的理论知识,包括i m s 网络、s i p 、s d p 、r t p 协议等相关内容。 第四章,设计并实现s y m b i a n 平台i m s 终端视频通话控制信令部分,包括注 册、会话流程以及s d p 协商。 第五章,阐述s y m b i a n 平台i m s 终端视频通话流媒体部分的实现,包括音视 频数据采集、r t p 处理、音频数据的播放与视频数据的显示。 第六章,搭建实验环境,同时对实现的模块进行验证,并对数据进行分析, 验证其有效性。 最后,总结全文,指出了论文中存在的不足和进一步需要研究的工作。 本课题取得的成果为今后基于s y m b i a n 平台i m s 终端业务的扩展、s y m b i a n 平台流媒体处理等方面奠定了基础,随着功能的不断完善和结果的成功测试,会 产生良好的经济效益,也会给同类开发提供一定的借鉴意义。 关键词:s y m b i a n ,i p 多媒体子系统,视频通话,媒体协商 重庆邮电大学硕士论文 a b s t r a c t a b s t r a c t a st h en a t i o n a lp o l i c yo ft h ei n t e g r a t i o no ft h r e en e t w o r k si sg r a d u a l l yg e t t i n gc l e a r , t h et e l e c o mo p e r a t o r sa r ep r e p a r i n gf o rt h ei m s o r i e n t e dt r a n s f o r m a t i o no fs e r v i c e n e t w o r k , i no r d e rt os u p p o r tt h en rm u l t i m e d i ab e a r e rs e r v i c e s c h i n am o b i l ei n v i t e d t ot e n d e rf o ri m se q u i p m e n t si nl a s td e c e m b e r , a n dt h e ns t a r t e dd e p l o y i n gt h ei m s n e t w o r ki n14 p r o v i n c e sa n dc i t i e s c o m m e r c i a lo p e r a t i o no fi m s n e t w o r kw o u l db e s t a r t u pi nt h i sy e a r c h i n at e l e c o ma n dc h i n au n i c o r na r ea l s oc o n s i d e r i n gb u i l d i n g i m sn e t w o r kt oe n h a n c et h ep r o v i d i n gc a p a b i l i t yf o rm u l t i m e d i as e r v i c e s t h eo p e r a t i o no fi m sm a i n l yf o c u s e so nf o u rp a r t s :t h ec o r en e t w o r k 、t h es e r v i c e p l a t f o r m 、t h ea c c e s ss i d ea n dt h et e r m i n a l b e c a u s et h ei m s t e r m i n a l sf a c ed i r e c t l yt o u s e t s ,p r o v i d i n gt h em o s td i r e c te x p e r i e n c e so fi m s ,r e s e a r c h e sa n di m p l c m c n t i o no f i m st e r m i n a l sa r ev e r ys i g n i f i c a n t w i t ht h em u l t i m e d i ar e s o u r c e sg r o w i n gm o r ea n d m o r ep l e n t i f u l ,t h es u p p o r t i n gp l a t f o r mo fi m st e r m i n a ls h o u l db ee x t e n d e dt ot h em a i n o p e r a t i n gs y s t e m si ns m a r tm o b i l ep h o n e s ,s u c ha ss y m b i a n 、l i n u x 、w i n d o w sm o b i l e e t c s y m b i a n i st h em o s tw i d e l yu s e d ,d o m i n a n to p e r a t i n gs y s t e mi np r e s e n ti n t e l l i g e n t m o b i l ef i e l d i th a sl o t so fg r e a tc h a r a c t e r i s t i c sa sh i g ht e c h n o l o g ym a t u r i t y 、e f f i c i e n t m e m o r ym a n a g e m e n ta n ds oo n t h i si s s u ec o m e sf r o mt h er e s e a r c hp r o j e c to fc h o n g q i n ge d u c a t i o nc o m m i s s i o n : r e s e a r c h e so nk e yt e c h n o l o g i e so fi m si n t e l l i g e n tt e r m i n a ls o f t w a r e t h ea u t h o rt a k e s r e s p o n s i b i l i t i e sf o rt h er e s e a r c ha n di m p l e m e n t a t i o no fv i d e oc a l la p p l i c a t i o no nt h e s y m b i a n - b a s e di m st e r m i n a li nt h i sp r o j e c t t h et h e s i si so r g a n i z e da sf o l l o w s : i nc h a p t e r1 ,t h em a i nc o n t e n t so ft h i st h e s i sa r ei n t r o d u c e db a s e do nt h ea n a l y s i s o ft h eb a c k g r o u n d ,c u r r e n tc o n d i t i o n sa n dd e m a n d so fv i d e oc a l la p p l i c a t i o no nt h e s y m b i a n - b a s e di m st e r m i n a l i nc h a p t e r2 ,t h ek n o w l e d g ea b o u tt h ec h a r a c t e r i s t i c sa n dm e m o r ym a n a g e m e n to f s y m b i a n , t h ef r a m e w o r ko f m u l t i m e d i ah a sb e e nd e e p l yc o m p r e h e n d e d i nc h a p t e r3 ,r e l e v a n tp r i n c i p l e sa n dk n o w l e d g ea r ef u r t h e re x p l a i n e d ,s u c ha st h e i m sn e t w o r ka r c h i t e c t u r e 、t h ep r o t o c o l s 、e s p e c i a l l ys i p 、s d p 、r t pa n ds oo i l i nc h a p t e r4 ,t h ef o c u sw o r k , t h ed e s i g na n di m p l e m e n t i n gm e t h o d sa r eg i v e n , i n c l u d i n gt h ep a r to fs i g n a l i n gc o n t r o li nv i d e oc a l la p p l i c a t i o no nt h es y m b i a n - b a s e d i m st e r m i n a l ,w h i c hc o n t a i n st h ep r o c e d u r e so fr e g i s t r a t i o na n dt h es d pn e g o t i a t i o n p r o c e d u r e s 重庆邮电大学硕士论文 i nc h a p t e r5 ,t h et h e s i sh a se l a b o r a t e dt h ei m p l c m e n t i o no ft h es t r e a m i n gm e d i a p a r ti nv i d e oc a l la p p l i c a t i o n0 1 1t h es y m b i a n - b a s e di m st e r m i n a l ,w h i c hc o n t a i n st h e a c q u i s i t i o no fa u d i o v i d e od a t a 、r t pp r o c e s s i n g 、t h eb r o a d c a s t i n go fa u d i od a t aa n dt h e d i s p l a yo f v i d e od a t a i nc h a p t e r6 ,t h et h e s i sh a se x p l o r e dh o wt ob u i l dt h ed e v e l o p m e n ta n dv e r i f y i n g e n v i r o n m e n t , a n da l s oh a sd o n es o m ea n a l y s i so f r e s u l t st ov 甜匆i t sv a l i d i t y a n df i n m l y t h i sw h o l et h e s i si ss u m m a r i z e d ,a n di t si n a d e q u a c i e sa n df u t u r et r e n d o ff u r t h e rr e s e a r c ha r ep o i n t e do u t t h ea c h i e v e m e n t so b t a i n e di nt h i st h e s i sw o u l dl a yt h ef o u n d a t i o nf o rt h e s y m b i a n - b a s e da p p l i c a t i o ne x t e n s i o no fi m st e r m i n a l sa n dt h ep r o c e s s i n go fs 幻e a m i n g m e d i a a f t e rt h ef o l l o w u pt e s t i n ga n d p e r f e c t i n g , t h i si s s u ew o u l dm a k eg o o de c o n o m i c e f f e c t s ,a n da l s op r o v i d ear e f e r e n c em e t h o df o rs i m i l a rr e s e a r c h e s k e yw o r d s :s y m b i a n ,i m s ,v i d e oc a l l ,m e d i an e g o t i a t i o n i i i 重庆邮电大学硕士论文缩略字表 英文缩写 a s c s c f d n s h l r h s s m s i f c 蹦 i 口i i m p u i p s e e m n 匝 n a t n g n p c m r t c p i u p p d f p o c p s t n q o s r t s p s d k s d p s 口 t c p u d p v u r v o p k 拭 中文译文 应用服务器 呼叫会话控制功能 域名系统 归属位置寄存器 归属用户服务器 p 多媒体子系统 初始过滤规则 即时通讯 口多媒体私有标识 m 多媒体公有标识 口协议安全结构 多媒体框架 网络地址转换 下一代网络 脉冲编码调制 r t p 控制协议 实时传输协议 策略控制功能 一键通 公共电话交换网 服务质量 实时流传输协议 软件开发工具包 会话描述协议 会话启动协议 传输控制协议 用户数据包协议 访问位置寄存器 m 电话 广域网 缩略字表 v 英文全称 a p p l i c a t i o ns e r v e r c a l ls e s s i o nc o n t r o l lf u n c t i o n d o m a i nn a m es y s t e m h o m el o c a t i o nr e g i s t e r h o m es u b s c r i b e rs e r v e r i pm u l t i m e d i as u b s y s t e m i n i t i a lf i l t e rc r i t e r i a i n s t a n tm e s s a g i n g i pm u l t i m e d i ap r i v a t ei d e n t i t y i pm u l t i m e d i ap u b l i ci d e n t i t y s e c u r i t ya r c h i t e c t u r ef o ri pn e t w o r k m u l t i m e d i af r a m e w o r k n e t w o r ka d d r e s st r a n s l a t i o n n e x tg e n e r a t i o nn e t w o r k p u l s ec o d em o d u l a t i o n k r pc o n t r o lp r o t o c o l r e a - l t i m et r a n s p o r tp r o t o c o l p o l i c yd e c i s i o nf u n c t i o n p u s h 勋乃豫 p u b l i cs w i t c h e dt e l e p h o n en e t w o r k q u a l i t yo f s e r v i c e r e a l t i m es t r e a mp r o t o c o l s o f t w a r ed e v e l o p m e n tk i t s e s s i o nd e s c r i p t i o np r o t o c o l s e s s i o ni n i t i a t i o np r o t o c o l t r a n s m i s s i o nc o n t r o lp r o t o c o l u s e rd a t a g r a mp r o t o c o l v i s i t o rl o c a t i o nr e g i s t e r v o i c eo v e ri n t e m e tp r o t o c o l w i d ea r e an e t w o r k 重庆邮电大学硕士论文插图清单 第二章 图2 1 图2 2 第三章 图3 1 图3 2 图3 3 图3 4 图3 5 图3 6 第四章 插图清单 s y m b i a n 手机的界面风格5 s y m b i a n 多媒体框架图1 l i m s 系统结构图1 3 多媒体数据及控制体系16 s i p 请求消息结构。1 8 s i p 响应消息结构。1 8 r t p r t c p 协议在传输层的位置。2l r t p 打包示意图2 1 图4 1i m s 终端总体设计框架图。2 4 图4 2i m s 终端工作流程图2 5 图4 3p j s i p 协议栈体系结构。2 6 图4 4p j s i p 功能库2 7 图4 5s i p 消息处理流程图2 8 图4 6i m s 用户注册2 9 图4 7 会话流程3 1 图4 8s d p 协商状态图3 3 图4 9 添加视频s d p 协商之前o3 5 图4 1 0 添加视频s d p 协商之后3 5 第五章 图5 1 音视频通信系统框图3 7 图5 2s y m b i a n 音视输入流框架图3 9 图5 3 语音采集流程图3 9 图5 4 视频采集流程图4 0 图5 5 数据发送流程图4 4 图5 6 数据接收流程图4 5 图5 7s y m b i a n 音视输出流框架图4 7 图5 8 视频显示流程图4 8 第六章 图6 1 s 6 0s d k 手机模拟器5l v m 重庆邮电大学硕士论文插图清单 图6 2 图6 3 图6 4 图6 5 图6 6 图6 7 图6 8 图6 9 图6 1 0 图6 1 1 图6 1 2 图6 1 3 图6 1 4 图6 1 5 图6 1 6 图6 1 7 o p e ni m sc o r e 网络构架5 2 p c s c f 运行效果图5 2 i - c s c f 运行效果图5 3 s c s c f 运行效果图5 3 h s s 运行效果图。5 3 实验环境图5 4 i m s 终端注册数据5 4 i m s 终端会话数据5 4 i n v i t e 请求中s d p 信息5 5 2 0 0o k 响应中s d p 信息5 5 i u 甲流5 5 s p e x 打包成r t p 包一5 6 i n v i t e 消息h 2 6 3 协商5 6 2 0 0o kh 2 6 3 协商5 6 模拟器注册效果图。5 6 视频显示效果图。5 7 i x 重庆邮电大学硕士论文第一章绪论 1 1 引言 第一章绪论 截止到2 0 0 9 年第三季度,我国固定电话用户已达到3 5 3 亿户,移动电话用户 达到6 2 4 亿户,中国互联网网民达到2 7 5 亿,其中宽带网民数达到了2 3 5 亿,宽 带接入比例达到8 5 4 5 。用户的增长和市场需求的变化使得业务融合、网络融合 的趋势越来越明显。 i m s 网络被认为是未来核心网的演进方向,它的接入无关性、业务和承载分离、 标准的网络、统一的数据库管理、网络安全性和完善的q o s 机制等特性,使运营 商拥有提供差异化服务的能力,解决传统网络的弊端,以在市场竞争中获得业务 优势1 1 。 i m s 的提出顺应了通信网络发展的趋势,在未来的移动通信网、全p 网络中, i m s 将会是最为重要的部分。i m s 网络可以为用户提供丰富多彩的多媒体业务, i m s 是移动核心网的发展方向,是部署新业务的基石。i m s 终端作为业务的最终 体现实体,开发基于i m s 网络的终端应用,越来越成为应用提供商乃至3 g 产品 开发商追求的目标。视频通话是3 g 的标志性业务之一,其视觉冲击力强,快速直 接的特点决定了它将为用户广泛的接受,将会在日后飞速发展。 随着多媒体资源的丰富共享,对i m s 框架的支持平台不能单单局限于某几个 手机生产厂商支持的特定平台,它需要扩展至支持主流3 g 手机操作系统比如: s y m b i a n 、l i n u x 、w i n d o w sm o b i l e 等。 s y m b i a n 操作系统是现今手机领域中应用范围最广的操作系统。基于s y m b i a n 平台i m s 终端视频通话的研究与实现,融合了当前比较热门的i m s 技术和s y m b i a n 开发技术,有非常重要的现实意义,可以产生良好的经济效益。 1 2 课题研究背景及意义 基于对新业务开发快速推广、优化网络结果及资源建设的需求,全球许多运 营商积极联合供应厂商,共同推动i m s 的开发。2 0 0 4 年以来,1 1 r u - t 开始把重点 放在n g n 标准工作上。短短几个月i m s 标准化工作就取得了很大的进展。进入 2 0 0 5 年以来,设备制造商和电信运营商也都非常关注i m s 。目前在i m s 网络建设 和产品开发方面,世界各大设备提供商纷纷推出i m s 的商用、实验产品,部分运 营商也在积极准备i m s 业务的测试,i m s 的网络部署和商业模式也在热烈的探讨 重庆邮电大学硕士论文 第一章绪论 中。在国内,各大运营商先后制定i m s 网络和业务的相关规范,并开展i m s 系统 测试,以进一步验证i m s 的功能、业务、接口性能等方面,为i m s 的商用做准备。 中国移动自己的i m s 标准已经完成,试验和测试在进行中。从2 0 0 5 年1 1 月 开始,中国移动研发中心开始了第一期i m s 实验室测试,主要是相关协议、接口 及通信机制的实验。中国移动于2 0 0 8 年1 0 月份开始的i m s 测试包括三个方面: 第一,核心网络承载平台测试、c s c f 、h s s 等网元的测试,考验i m s 网络对所有 承载和业务的控制,及与其他网络的互联互通的能力。第二,对多媒体彩铃业务、 多媒体电话业务等i m s 关键业务及应用平台测试。第三,i m s 与现网计费、网管 等的集成测试。 值得一提的是,不同于过去多年i m s 商业模式模糊的状况,以中国移动的i m s 业务测试及业务推广试点为代表,目前国内运营商都已经明确了i m s 的定位。对 i m s 来说,主要市场前景是其对各种业务的组合能力,在i m s 核心网上开展的丰 富业务,为用户提供大量个性化与差异化服务。 但是i m s 仍然有很多不确定因数,i m s 涉及到的网络的融合、业务的融合、 管理的融合、运营的融合,面临一系列的挑战。设备供应商和业务提供商必须把 注意力高度集中在特定市场和特定融合需求上,另外还需要一个高度灵活的平台, 才能适应新业务的各种需求。 本文的研究方向就是基于上述背景下提出的,i m s 终端视频通话是i m s 终端 业务的一个重要组成部分,通过对视频通话的研究,不仅为i m s 终端业务研发迈 出了强有力的一步,同时为未来更多的i m s 多媒体业务扩展以及s y m b i a n 平台软 件研发提供技术积累。 1 3 主要研究内容 本课题来源于重庆市教委科研项目:“i m s 智能终端软件关键技术研究,该 课题要求i m s 终端业务实现w m d o w s 、w m d o w sm o b i l e 、s y m b i a n 的跨平台使用。 在整个课题的研发过程中,本人主要承担s y m b i a n 平台i m s 终端视频通话应用的 研究与实现,重点实现音视频数据的采集、编解码、r t p 发送接收、s d p 协商、 语音数据播放以及视频数据显示,本文将重点从这些方面进行研究。 1 4 论文组织与结构 论文不仅对基本理论知识进行了介绍,同时还重点剖析了如何在相关标准和 2 重庆邮电大学硕士论文 第一章绪论 规范下进行基于s y m b i a n 平台i m s 终端视频通话相关技术的研究、技术代码的设 计与实现等过程,文章具体组织结构如下: 第一章描述基于s y m b i a n 平台i m s 终端视频通话应用的研究现状与需求,阐 述本论文的研究背景和需要进行的研究工作。 第二章主要介绍s y m b i a n 平台、s y m b i a n 平台特点以及用户界面、编程基础、 内存管理机制以及多媒体框架等s y m b i a n 基础知识。 第三章全面介绍了i m s 网络相关知识,以及在研发中涉及到的所有协议,为 i m s 终端视频通话的研发提供了理论依据。 第四章为本文重点。遵循i m s 承载与控制分离的核心思想,本章阐述i m s 终 端视频通话控制信令部分的实现,详细描述基于s y m b i a n 平台i m s 终端注册以及 会话流程的实现、s d p 协商。 第五章作为前一章的补充,也是本文的重点之一。本章详细阐述s y m b i a n 平 台i m s 终端视频通话流媒体部分的实现,包括音视频数据采集、r t p 处理、音频 数据的播放与视频数据的显示。 第六章详细介绍了开发基于s y m b i a n 平台i m s 终端视频通话应用实现需要搭 建的实验环境,包括s y m b i a n 开发环境以及测试环境,最后通过数据分析和实验 效果图验证了实现部分的正确性。 第七章对本文进行总结,对本课题研发中需要迸一步完善的问题进行了说明, 并对未完成的工作进行了展望。 3 重庆邮电大学硕士论文 第二章s y m b i a n 平台 第二章s y m b i a n 平台 2 1s y m b i a n 平台介绍 s y m b i a n 成立于1 9 9 8 年6 月,最初是由爱立信、摩托罗拉、诺基亚和p s i o n 共同持股的独立私营公司,目的是为了能够设计并开发出一种可以在手机及其他 类似的移动通讯终端产品上运行的开放性操作系统,以此推动高端智能移动电话 及类似的终端产品尽快进入大众消费领域。2 0 0 8 年6 月s y m b i a n 公司被诺基亚全 资收购,成为n o l d a 旗下公司。在n o l d a 的大力倡导下,s y m b i a n 已经成为一个开 放的、易用的、专业的开发平台。 目前在手机操作系统中,从权威r r 研究公司g a x t n e r 发布的2 0 0 8 年第二季度 各智能手机系统全球份额的调查报告看,s y m b i a n 占5 7 ,w i n d o w sm o b i l e 为1 2 , 其余还有l i n u x 、p a l mo s 、苹果的i p h o n e 以及g o o g l e 2 0 0 7 年才推出的a n d r o i d 等。从报告来看,s y m b i a n 仍是市场上的绝对主流。 2 2s y m b i a n 特点 s y m b i a n 是一个专门为智能手机开发的操作系统。一般来说智能手机拥有比普 通手机更好的硬件条件,但仍然属于资源受限设备,为了适应智能手机硬件的限 制,智能手机操作系统必须具备高效、可靠的特点,同时还必须提供丰富的功能, 这些正是s y m b i a n 操作系统的特点 2 4 1 。 高效 s y m b i a n 操作系统具有高效的多任务处理功能。许多操作系统使用多线程实现 多任务,但多线程操作十分复杂、非常容易出错,而且占用系统资源较多。s y m b i a n 操作系统虽然支持多线程,但是一般来说并不推荐使用这种机制实现多任务处理。 在s y m b i a n 操作系统中常用事件驱动的消息机制实现多任务处理,降低系统开销。 s y m b i a n 操作系统最大限度的支持软件重用。s y m b i a n 操作系统将功能模块作 为单独的引擎,这样第三方应用程序就不必做重复开发,直接调用引擎即可。 s y m b i a n 操作系统还支持动态链接库技术。 可扩展性 s y m b i a n 操作系统的可扩展性体现在两个方面,首先s y m b i a n 操作系统的组 织结构保证它在功能上的可扩展性。s y m b i a n 操作系统是用c + + 语言编写的面向 对象的操作系统,内核代码只占整个系统的5 ,其他系统组件作为服务器程序为 4 重庆邮电大学硕士论文 第二章s y m b i a n 平台 应用程序提供服务,对内核的功能进行扩充。 其次,s y m b i a n 公司允许开发者在操作系统上开发新的软件平台,开发者积极 参与软件开发,形成庞大的研发队伍,他们的开发成果扩展了s y m b i a n 操作系统 的功能。 可靠 手机是一种用户设备,里面会保存一些有用信息,如果频繁出现软件故障或 丢失数据的情况,就会导致用户对手机失去信心,因此s y m b i a n 操作系统必须重 视系统的可靠性。 s y m b i a n 操作系统使用服务器程序严格控制资源的分配和使用【2 】,提供完善的 错误处理机制,即使应用程序因为某个错误终止,也不会影响到其他应用程序和 操作系统的运行。 s y m b i a n 操作系统还提供了一系列的机制以防止出现内存泄露。 面向无线数据通信 智能手机最大的特点就是数据通信能力,例如收发电子邮件、访问互联网或 者执行同步操作等,这些能力的建立通常采用无线接入的方式。s y m b i a n 操作系统 支持各种无线数据通信协议。 2 3s y m b i a n 用户界面平台 手机是一种用户设备,为了适应不同用户的需求,它的外观和用户界面没有 统一的风格。s y m b i a n 不提供特定的用户界面,只提供操作系统的核心功能。在 s y m b i a n 操作系统和最终的手机设备之间,还有一个用户界面平台,用来确定手 机设备的用户界面风格,包括手机屏幕大小、控件外观、菜单结构和输入方式等。 目前s y m b i a n 操作系统的用户界面平台主要有:诺基亚公司的$ 6 0 平台、8 0 系列 平台、9 0 系列平台以及u i q 公司的u i q 平台,图2 1 展示了s y m b i a n 操作系统与 各个用户界面平台之间的关系。 手机设备 每l 露固专 用户界面平台匡翌臣堕圃臣至囹 夏 f 二 一17 := 。 应用程序引擎 1( 名片夹引擎、日历引擎和溯览器引擎等) 卜一 。 s y m b i a no s 中间件 卜( 应用程序框架、多媒体框架和消息框架等) 广。一呷一一一一 s y m b i a no s 基础库 ( 内核、文件服务器、用户库和驱动程序等) i ,一一一一 图2 1s y m b i a n 手机的界面风格 5 重庆邮电大学硕士论文第二章s y m b i a n 平台 经过多方面考虑包括系统的可扩展性、平台的普及、软件的支持,本课题选 取的是s y m b i a n 操作系统$ 6 0 平台,$ 6 0 是智能手机中应用最广泛的系统版本,也 是拥有最多第三方软件的界面。 2 4s y m b i a n 编程基础 2 4 1 命名约定 s y m b i a n 操作系统中有一些命名约定,这些约定不是强制的。命名约定包含很 多信息。s y m b i a n 中的命名约定主要分为5 类:类名、数据名、函数名、宏名和资 源。下面分别对这五类进行介绍: 类名的命名约定:类名本身应该清楚的指明这个类可以做什么。s y m b i a n 中的 类主要包括t 、s 、c 、r 、m 这五类,将每一个的第一个字母大写,以此划分类名 称中的单词【5 】。 t 类: t 类表示一个简单类,是通过t y p e d e f 定义的,这种类没有任何分配的动态内 存或其他资源,因此不需要析构函数。这种类不仅仅是数据结构,还有大量方法。 t 类并没有公共基类,所以必须确保在使用前完整构造每个t 类。 s 类: s y m b i a n 中有时也可以使用c _ 件结构体,这种结构体需要加上前缀“s 。然而, 很少使用到这种结构体。如果使用结构体,则这种结构不应该具有任何成员函数, 相反,应该使用t 类。 c 类: c 类表示从c b a s c 派生而来的类。这些类被设计为在堆上进行构造,而不是在 栈上进行构造。因此每一个可实例化的c 类都应该按照s y m b i a n 的二阶段构造模 式r oc 类对象都应该通过删除c h a s e 的指针进行销毁。 r 类: r 类表示资源的客户端句柄,与资源有关。它天生是为了管理资源而存活,r 类本身很简单,通常在栈上分配,可以拷贝。应用程序并不实际拥有这种资源, 而是一般的设备上其他位置中的一个s y m b i a n 操作系统服务器所拥有。客户可以 使用这些句柄访问服务器管理的资源,并且请求使用它的功能。 m 类: m 类由纯虚函数组成。这种类定义了接口,但并不提供具体的现实。这种类 是抽象基类,只包含纯虚函数。同样,他们没有任何成员数据,因而无法被实例 6 重庆邮电大学硕士论文 第二章s y m b i a n 平台 化。m 类提供了s y m b i a n 操作系统中使用的多重继承的唯一形式,绝对不可以从 多个c 类中派生,但是可以根据需要从多个m 类中派生。 s y m b i a n 操作系统中数据名命名约定:常量的定义一般在前面加一个字符“k , 并且不需要将全部的字符都大写。s y m b i a a 的变量没有任何的前缀,类的成员变量 一般会在前面加一个符号“i 。枚举常量以“e 开头,函数的参数以字符“a 开 头。 函数名的命名约定:函数一般首字母大写,使用动词而不是名词,如果函数 处理异常退出,需要在函数名的最后加字符“l ”,以“l c 结尾表示函数中要分 配对象。 宏名的命名约定比较简单,要求使用大写字母和下划线。资源命名通常以字 符“r 一开头。 2 4 2 基本类型 整型:t i n t 和t u 缸 其中又分为8 位、1 6 位、3 2 位的带符号的和不带符号的整型变量。如t i n t 8 表示带符号的8 位整型变量,t u i n t l 6 表示不带符号的1 6 位整型变量。其中t i n t 和t u i n t 分别表示带符号的3 2 位整型和不带符号的3 2 位整型。 文本类型:t t e x t 又分t t e x t 8 ,t t c x t l 6 。t t e x t 8 表示窄字符,t i e x t l 6 表示宽字符。 b o o l 类型:t b 0 0 l 对应的值:e t r u e 和e f a l s e 浮点类型:t r e a l 又分为t r e a l 3 2 和t r e a l 6 4 。t r e a l 3 2 表示单精度的浮点类型,t r e a l 6 4 表示 双精度的浮点类型。 2 5s y m b i a n 内存管理独特机制 s y m b i a n 的运行环境是资源受限的手机,在内存或者其他资源不足时应用程序 会发生异常,如果异常没有得到良好的处理,应用程序就会出现运行错误。因此 良好的内存分配管理机制是非常重要的,s y m b i a n 提供了一系列处理框架,它在内 存管理机制上做的非常好,采用了独特的内存管理机制。 7 重庆邮电大学硕士论文 第二章s y m b i a u 平台 2 5 1s y m b i a n 异常的抛出和捕获 u s e r :l e a v e 0 函数用于抛出一个异常,与标准c + + 的t h r o w 语句功能类似。程 序运行到u s e r :l e a v e o 时,会立即结束当前函数,并抛出一个异常,该异常会一直 向外层函数抛出,直到被某个捕获模块捕获为止。 其中u s e r :l e a v e 0 函数无条件的抛出一个异常并附带错误代码。参考代码如 下: s y m b i a n 提供了两个宏t r a p 和t r a p d 来捕获异常,其作用与标准c + + 的仃y 、 c a t c h 语句类似,用于捕获异常、得到异常的错误代码,并且阻止异常继续向外层 函数抛出。t r a p 和t r a p d 的区别在于:使用t r a p 之前,需要事先声明保存异 常错误的变量,而t r a p d 不需要,可以直接使用。参考代码如下: 如果存在多个可能异常的函数,我们都是用t r a p 或者t r a p d 捕获异常,将 会造成非常大的系统开销,清除栈就是为了解决这个问题而存在的,并且它很好 的解决了这个问题。 8 重庆邮电大学硕士论文第二章s y m b i a n 平台 2 5 2s y m b i a n 清除栈 清除栈是用来保存分配在堆上的对象指针。一旦出现异常,系统能够根据清 除栈释放出错程序在堆中分配的空间,从而避免了内存泄露。 清除栈的原理是进行可能异常的操作之前,将指向堆对象的指针压入清除栈, 清除栈的压入操作使用c l e a n u p s t a e k :p u s h l 0 函数。在发生异常时,系统会根据清 除栈中保存的指针删除它们指向的对象。 将一个指针对象压入清除栈时,其实质是在清除栈中保存该指针的备份。发 生异常时,该指针本身作为自动变量会被自动销毁,而清除栈可以使用其备份销 毁该对象、释放内存空间,最后使用c l e a n u p s t a c k :p o p o 函数将清除栈中的备份弹 出。p o p o 函l 数不释放该元素指向的对象,需要手动释放,参考代码如下: 2 5 3s y m b i a n 二阶段构造 s y m b i a n 系统中c 类对象的构造需要使用特有的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年能源互联网分布式能源交易市场潜力分析报告
- 2025年网络直播行业规范化发展趋势与商业模式创新策略研究
- 商务信息咨询公司合同付款管理办法
- 巷道掘进培训课件
- 2025年春运出行预测分析报告
- 岩石沙和黏土教学课件
- 屋面拆除安全教育培训课件
- 小麦春季管理课件
- 知识产权担保借款协议
- 专业物流公司特种车辆驾驶员合同样本
- 胡寿松《自动控制原理》(第6版)笔记和课后习题(含考研真题)
- 新概念第一册Lesson-65-66练习题
- 固体物理(黄昆)第一章PPT
- 十经络养生法专家讲座
- 创新创业基础(石河子大学)智慧树知到答案章节测试2023年
- 一年级道德与法治上册全册教案
- GB/T 2091-2008工业磷酸
- GB/T 1770-2008涂膜、腻子膜打磨性测定法
- 粮库监理工作流程
- 输血申请单规范PDCA
- 污水处理技术及工艺介绍课件
评论
0/150
提交评论